')
.append($header.find(selector).first().clone())
.html()
: (data[selector]!==undefined) ? data[selector]:''
})
$header.after(cloneHTML)
$header=$header.parent().find('.whb-clone')
$header.find('.whb-row').removeClass('whb-flex-equal-sides').addClass('whb-flex-flex-middle');
}
if($('.whb-header').hasClass('whb-scroll-slide')){
stickAfter=headerHeight + adminBarHeight
}
var previousScroll;
$window.on('scroll', function (){
var after=stickAfter;
var currentScroll=$(window).scrollTop();
var windowHeight=$(window).height();
var documentHeight=$(document).height();
if($('.header-banner').length > 0&&$('body').hasClass('header-banner-display')){
after +=$('.header-banner').outerHeight();
}
if(!$('.close-header-banner').length&&$header.hasClass('whb-scroll-stick')){
after=stickAfter
}
if(currentScroll > after){
stickHeader();
}else{
unstickHeader();
}
var startAfter=100;
if($header.hasClass('whb-scroll-stick')){
startAfter=500;
}
if(isHideOnScroll){
if(previousScroll - currentScroll > 0&¤tScroll > after){
$header.addClass('whb-scroll-up');
$header.removeClass('whb-scroll-down');
}else if(currentScroll - previousScroll > 0&¤tScroll + windowHeight!=documentHeight&¤tScroll > (after + startAfter)){
$header.addClass('whb-scroll-down');
$header.removeClass('whb-scroll-up');
}else if(currentScroll <=after){
$header.removeClass('whb-scroll-down');
$header.removeClass('whb-scroll-up');
}else if(currentScroll + windowHeight >=documentHeight - 5){
$header.addClass('whb-scroll-up');
$header.removeClass('whb-scroll-down');
}}
previousScroll=currentScroll;
});
function stickHeader(){
if(isSticked) return
isSticked=true
$header.addClass('whb-sticked')
}
function unstickHeader(){
if(!isSticked) return
isSticked=false
$header.removeClass('whb-sticked')
}},
counterShortcode: function (counter){
if(counter.attr('data-state')=='done'||counter.text()!=counter.data('final')){
return;
}
counter.prop('Counter', 0).animate({
Counter: counter.text()
}, {
duration: 3000,
easing: 'swing',
step: function (now){
if(now >=counter.data('final')){
counter.attr('data-state', 'done');
}
counter.text(Math.ceil(now));
}});
},
visibleElements: function (){
$('.woodmart-counter .counter-value').each(function (){
$(this).waypoint(function (){
woodmartThemeModule.counterShortcode($(this));
}, { offset: '100%' });
});
},
bannersHover: function (){
if(typeof ($.fn.panr)=='undefined') return;
$('.promo-banner.banner-hover-parallax').panr({
sensitivity: 20,
scale: false,
scaleOnHover: true,
scaleTo: 1.15,
scaleDuration: .34,
panY: true,
panX: true,
panDuration: 0.5,
resetPanOnMouseLeave: true
});
},
portfolioEffects: function (){
if(typeof ($.fn.panr)=='undefined') return;
$('.woodmart-portfolio-holder .portfolio-parallax').panr({
sensitivity: 15,
scale: false,
scaleOnHover: true,
scaleTo: 1.12,
scaleDuration: 0.45,
panY: true,
panX: true,
panDuration: 1.5,
resetPanOnMouseLeave: true
});
},
promoPopup: function (){
var promo_version=woodmart_settings.promo_version;
if($('body').hasClass('page-template-maintenance')||woodmart_settings.enable_popup!='yes'||(woodmart_settings.promo_popup_hide_mobile=='yes'&&$(window).width() < 768)) return;
var popup=$('.woodmart-promo-popup'),
shown=false,
pages=Cookies.get('woodmart_shown_pages');
var showPopup=function (){
$.magnificPopup.open({
items: {
src: '.woodmart-promo-popup'
},
type: 'inline',
removalDelay: 500,
tClose: woodmart_settings.close,
tLoading: woodmart_settings.loading,
callbacks: {
beforeOpen: function (){
this.st.mainClass=woodmartTheme.popupEffect + ' promo-popup-wrapper';
},
open: function (){
},
close: function (){
Cookies.set('woodmart_popup_' + promo_version, 'shown', { expires: 7, path: '/' });
}}
});
$(document).trigger('wood-images-loaded');
};
$('.woodmart-open-newsletter').on('click', function (e){
e.preventDefault();
showPopup();
})
if(!pages) pages=0;
if(pages < woodmart_settings.popup_pages){
pages++;
Cookies.set('woodmart_shown_pages', pages, { expires: 7, path: '/' });
return false;
}
if(Cookies.get('woodmart_popup_' + promo_version)!='shown'){
if(woodmart_settings.popup_event=='scroll'){
$(window).scroll(function (){
if(shown) return false;
if($(document).scrollTop() >=woodmart_settings.popup_scroll){
showPopup();
shown=true;
}});
}else{
setTimeout(function (){
showPopup();
}, woodmart_settings.popup_delay);
}}
},
contentPopup: function (){
var popup=$('.woodmart-open-popup');
popup.magnificPopup({
type: 'inline',
removalDelay: 500,
tClose: woodmart_settings.close,
tLoading: woodmart_settings.loading,
callbacks: {
beforeOpen: function (){
this.st.mainClass=woodmartTheme.popupEffect + ' content-popup-wrapper';
},
open: function (){
$(document).trigger('wood-images-loaded');
}}
});
},
cookiesPopup: function (){
var cookies_version=woodmart_settings.cookies_version;
if(Cookies.get('woodmart_cookies_' + cookies_version)=='accepted') return;
var popup=$('.woodmart-cookies-popup');
setTimeout(function (){
popup.addClass('popup-display');
popup.on('click', '.cookies-accept-btn', function (e){
e.preventDefault();
acceptCookies();
})
}, 2500);
var acceptCookies=function (){
popup.removeClass('popup-display').addClass('popup-hide');
Cookies.set('woodmart_cookies_' + cookies_version, 'accepted', { expires: 60, path: '/' });
};},
googleMap: function (){
var gmap=$(".google-map-container-with-content");
$(window).resize(function (){
gmap.css({
'height': gmap.find('.woodmart-google-map.with-content').outerHeight()
})
});
},
menuSetUp: function (){
var hasChildClass='menu-item-has-children',
mainMenu=$('.woodmart-navigation').find('ul.menu'),
lis=mainMenu.find(' > li'),
openedClass='item-menu-opened';
$('.mobile-nav').find('ul.site-mobile-menu').find(' > li').has('.sub-menu-dropdown').addClass(hasChildClass);
mainMenu.on('click', ' > .item-event-click > a', function (e){
e.preventDefault();
if(!$(this).parent().hasClass(openedClass)){
$('.' + openedClass).removeClass(openedClass);
}
$(this).parent().toggleClass(openedClass);
});
$(document).on('click', function (e){
var target=e.target;
if($('.' + openedClass).length > 0&&!$(target).is('.item-event-hover')&&!$(target).parents().is('.item-event-hover')&&!$(target).parents().is('.' + openedClass + '')){
mainMenu.find('.' + openedClass + '').removeClass(openedClass);
return false;
}});
var menuForIPad=function (){
if($(window).width() <=1024){
mainMenu.find(' > .menu-item-has-children.item-event-hover').each(function (){
$(this).data('original-event', 'hover').removeClass('item-event-hover').addClass('item-event-click');
});
}else{
mainMenu.find(' > .item-event-click').each(function (){
if($(this).data('original-event')=='hover'){
$(this).removeClass('item-event-click').addClass('item-event-hover');
}});
}};
$(window).on('resize', menuForIPad);
},
menuOffsets: function (){
var mainMenu=$('.main-nav, .whb-secondary-menu').find('ul.menu'),
lis=mainMenu.find(' > li.menu-item-design-sized, li.menu-item-design-full-width');
mainMenu.on('hover', ' > li.menu-item-design-sized, li.menu-item-design-full-width', function (e){
setOffset($(this));
});
var setOffset=function (li){
var dropdown=li.find(' > .sub-menu-dropdown'),
styleID='arrow-offset',
siteWrapper=$('.website-wrapper');
dropdown.attr('style', '');
var dropdownWidth=dropdown.outerWidth(),
dropdownOffset=dropdown.offset(),
screenWidth=$(window).width(),
bodyRight=siteWrapper.outerWidth() + siteWrapper.offset().left,
viewportWidth=$('body').hasClass('wrapper-boxed')||$('body').hasClass('wrapper-boxed-2') ? bodyRight:screenWidth,
extraSpace=(li.hasClass('menu-item-design-full-width')) ? 0:10;
if(!dropdownWidth||!dropdownOffset) return;
var dropdownOffsetRight=screenWidth - dropdownOffset.left - dropdownWidth;
if($('body').hasClass('rtl')&&dropdownOffsetRight + dropdownWidth >=viewportWidth&&(li.hasClass('menu-item-design-sized')||li.hasClass('menu-item-design-full-width'))){
var toLeft=dropdownOffsetRight + dropdownWidth - viewportWidth;
dropdown.css({
right: - toLeft - extraSpace
});
}else if(dropdownOffset.left + dropdownWidth >=viewportWidth&&(li.hasClass('menu-item-design-sized')||li.hasClass('menu-item-design-full-width'))){
var toRight=dropdownOffset.left + dropdownWidth - viewportWidth;
dropdown.css({
left: - toRight - extraSpace
});
}};
lis.each(function (){
setOffset($(this));
$(this).addClass('with-offsets');
});
},
onePageMenu: function (){
var scrollToRow=function (hash){
var row=$('#' + hash);
if(row.length < 1) return;
var position=row.offset().top;
$('html, body').animate({
scrollTop: position - woodmart_settings.one_page_menu_offset
}, 800);
setTimeout(function (){
activeMenuItem(hash);
}, 800);
};
var activeMenuItem=function (hash){
var itemHash;
$('.onepage-link').each(function (){
itemHash=$(this).find('> a').attr('href').split('#')[1];
if(itemHash==hash){
$('.onepage-link').removeClass('current-menu-item');
$(this).addClass('current-menu-item');
}});
};
$('body').on('click', '.onepage-link > a', function (e){
var $this=$(this),
hash=$this.attr('href').split('#')[1];
if($('#' + hash).length < 1) return;
e.preventDefault();
scrollToRow(hash);
$('.woodmart-close-side').trigger('click');
});
if($('.onepage-link').length > 0){
$('.entry-content > .vc_section, .entry-content > .vc_row').waypoint(function (){
var hash=$(this).attr('id');
activeMenuItem(hash);
}, { offset: 150 });
var locationHash=window.location.hash.split('#')[1];
if(window.location.hash.length > 1){
setTimeout(function (){
scrollToRow(locationHash);
}, 500);
}}
},
mobileNavigation: function (){
var body=$("body"),
mobileNav=$(".mobile-nav"),
wrapperSite=$(".website-wrapper"),
dropDownCat=$(".mobile-nav .site-mobile-menu .menu-item-has-children"),
elementIcon='',
butOpener=$(".icon-sub-menu");
var closeSide=$('.woodmart-close-side');
dropDownCat.append(elementIcon);
mobileNav.on("click", ".icon-sub-menu", function (e){
e.preventDefault();
if($(this).parent().hasClass("opener-page")){
$(this).parent().removeClass("opener-page").find("> ul").slideUp(200);
$(this).parent().removeClass("opener-page").find(".sub-menu-dropdown .container > ul, .sub-menu-dropdown > ul").slideUp(200);
$(this).parent().find('> .icon-sub-menu').removeClass("up-icon");
}else{
$(this).parent().addClass("opener-page").find("> ul").slideDown(200);
$(this).parent().addClass("opener-page").find(".sub-menu-dropdown .container > ul, .sub-menu-dropdown > ul").slideDown(200);
$(this).parent().find('> .icon-sub-menu').addClass("up-icon");
}});
mobileNav.on('click', '.mobile-nav-tabs li', function (){
if($(this).hasClass('active')) return;
var menuName=$(this).data('menu');
$(this).parent().find('.active').removeClass('active');
$(this).addClass('active');
$('.mobile-menu-tab').removeClass('active');
$('.mobile-' + menuName + '-menu').addClass('active');
});
body.on("click", ".mobile-nav-icon", function (){
if(mobileNav.hasClass("act-mobile-menu")){
closeMenu();
}else{
openMenu();
}});
body.on("click touchstart", ".woodmart-close-side", function (){
closeMenu();
});
body.on('click', '.mobile-nav .login-side-opener', function (){
closeMenu();
});
function openMenu(){
mobileNav.addClass("act-mobile-menu");
closeSide.addClass('woodmart-close-side-opened');
}
function closeMenu(){
mobileNav.removeClass("act-mobile-menu");
closeSide.removeClass('woodmart-close-side-opened');
$('.mobile-nav .searchform input[type=text]').blur();
}},
simpleDropdown: function (){
$('.input-dropdown-inner').each(function (){
var dd=$(this);
var btn=dd.find('> a');
var input=dd.find('> input');
var list=dd.find('> .list-wrapper');
inputPadding();
$(document).on('click', function (e){
var target=e.target;
if(dd.hasClass('dd-shown')&&!$(target).is('.input-dropdown-inner')&&!$(target).parents().is('.input-dropdown-inner')){
hideList();
return false;
}});
btn.on('click', function (e){
e.preventDefault();
if(dd.hasClass('dd-shown')){
hideList();
}else{
showList();
}
return false;
});
list.on('click', 'a', function (e){
e.preventDefault();
var value=$(this).data('val');
var label=$(this).text();
list.find('.current-item').removeClass('current-item');
$(this).parent().addClass('current-item');
if(value!=0){
list.find('ul:not(.children) > li:first-child').show();
}else if(value==0){
list.find('ul:not(.children) > li:first-child').hide();
}
btn.text(label);
input.val(value).trigger('cat_selected');
hideList();
inputPadding();
});
function showList(){
dd.addClass('dd-shown');
list.slideDown(100);
if(typeof ($.fn.devbridgeAutocomplete)!='undefined'){
dd.parent().siblings('[type="text"]').devbridgeAutocomplete('hide');
}
setTimeout(function (){
woodmartThemeModule.nanoScroller();
}, 300);
}
function hideList(){
dd.removeClass('dd-shown');
list.slideUp(100);
}
function inputPadding(){
if($(window).width() <=768) return;
var paddingValue=dd.innerWidth() + dd.parent().siblings('.searchsubmit').innerWidth() + 17,
padding='padding-right';
if($('body').hasClass('rtl')) padding='padding-left';
dd.parent().parent().find('.s').css(padding, paddingValue);
}});
},
equalizeColumns: function (){
$.fn.woodmart_equlize=function (options){
var settings=$.extend({
child: "",
}, options);
var that=this;
if(settings.child!=''){
that=this.find(settings.child);
}
var resize=function (){
var maxHeight=0;
var height;
that.each(function (){
$(this).attr('style', '');
if($(window).width() > 767&&$(this).outerHeight() > maxHeight)
maxHeight=$(this).outerHeight();
});
that.each(function (){
$(this).css({
minHeight: maxHeight
});
});
}
$(window).on('resize', function (){
resize();
});
setTimeout(function (){
resize();
}, 200);
setTimeout(function (){
resize();
}, 500);
setTimeout(function (){
resize();
}, 800);
}
$('.equal-columns').each(function (){
$(this).woodmart_equlize({
child: '> [class*=col-]'
});
});
},
blogMasonry: function (){
if(typeof ($.fn.isotope)=='undefined'||typeof ($.fn.imagesLoaded)=='undefined') return;
var $container=$('.masonry-container');
$container.imagesLoaded(function (){
$container.isotope({
gutter: 0,
isOriginLeft: !$('body').hasClass('rtl'),
itemSelector: '.blog-design-masonry, .blog-design-mask, .masonry-item'
});
});
$('.masonry-filter').on('click', 'a', function (e){
e.preventDefault();
setTimeout(function (){
jQuery(document).trigger('wood-images-loaded');
}, 300);
$('.masonry-filter').find('.filter-active').removeClass('filter-active');
$(this).addClass('filter-active');
var filterValue=$(this).attr('data-filter');
$(this).parents('.portfolio-filter').next('.masonry-container.woodmart-portfolio-holder').isotope({
filter: filterValue
});
});
},
clickOnScrollButton: function (btnClass, destroy, offset){
if(typeof $.waypoints!='function') return;
var $btn=$(btnClass);
if(destroy){
$btn.waypoint('destroy');
}
if(!offset){
offset=0;
}
$btn.waypoint(function (){
$btn.trigger('click');
}, {
offset: function (){
return $(window).outerHeight() + parseInt(offset);
}});
},
blogLoadMore: function (){
var btnClass='.woodmart-blog-load-more.load-on-scroll',
process=false;
woodmartThemeModule.clickOnScrollButton(btnClass, false, false);
$('.woodmart-blog-load-more').on('click', function (e){
e.preventDefault();
if(process||$(this).hasClass('no-more-posts')) return;
process=true;
var $this=$(this),
holder=$this.parent().siblings('.woodmart-blog-holder'),
source=holder.data('source'),
action='woodmart_get_blog_' + source,
ajaxurl=woodmart_settings.ajaxurl,
dataType='json',
method='POST',
atts=holder.data('atts'),
paged=holder.data('paged');
$this.addClass('loading');
var data={
atts: atts,
paged: paged,
action: action,
};
if(source=='main_loop'){
ajaxurl=$(this).attr('href');
method='GET';
data={};}
$.ajax({
url: ajaxurl,
data: data,
dataType: dataType,
method: method,
success: function (data){
var items=$(data.items);
if(items){
if(holder.hasClass('masonry-container')){
holder.append(items).isotope('appended', items);
holder.imagesLoaded().progress(function (){
holder.isotope('layout');
woodmartThemeModule.clickOnScrollButton(btnClass, true, false);
});
}else{
holder.append(items);
woodmartThemeModule.clickOnScrollButton(btnClass, true, false);
}
holder.data('paged', paged + 1);
if(source=='main_loop'){
$this.attr('href', data.nextPage);
if(data.status=='no-more-posts'){
$this.hide().remove();
}}
}
if(data.status=='no-more-posts'){
$this.addClass('no-more-posts');
$this.hide();
}},
error: function (data){
console.log('ajax error');
},
complete: function (){
$this.removeClass('loading');
process=false;
},
});
});
},
portfolioLoadMore: function (){
if(typeof $.waypoints!='function') return;
var waypoint=$('.woodmart-portfolio-load-more.load-on-scroll').waypoint(function (){
$('.woodmart-portfolio-load-more.load-on-scroll').trigger('click');
}, { offset: '100%' }),
process=false;
$('.woodmart-portfolio-load-more').on('click', function (e){
e.preventDefault();
if(process||$(this).hasClass('no-more-posts')) return;
process=true;
var $this=$(this),
holder=$this.parent().parent().find('.woodmart-portfolio-holder'),
source=holder.data('source'),
action='woodmart_get_portfolio_' + source,
ajaxurl=woodmart_settings.ajaxurl,
dataType='json',
method='POST',
timeout,
atts=holder.data('atts'),
paged=holder.data('paged');
$this.addClass('loading');
var data={
atts: atts,
paged: paged,
action: action,
};
if(source=='main_loop'){
ajaxurl=$(this).attr('href');
method='GET';
data={};}
$.ajax({
url: ajaxurl,
data: data,
dataType: dataType,
method: method,
success: function (data){
var items=$(data.items);
if(items){
if(holder.hasClass('masonry-container')){
holder.append(items).isotope('appended', items);
holder.imagesLoaded().progress(function (){
holder.isotope('layout');
clearTimeout(timeout);
timeout=setTimeout(function (){
$('.woodmart-portfolio-load-more.load-on-scroll').waypoint('destroy');
waypoint=$('.woodmart-portfolio-load-more.load-on-scroll').waypoint(function (){
$('.woodmart-portfolio-load-more.load-on-scroll').trigger('click');
}, { offset: '100%' });
}, 1000);
});
}else{
holder.append(items);
}
holder.data('paged', paged + 1);
$this.attr('href', data.nextPage);
}
woodmartThemeModule.mfpPopup();
woodmartThemeModule.portfolioEffects();
if(data.status=='no-more-posts'){
$this.addClass('no-more-posts');
$this.hide();
}},
error: function (data){
console.log('ajax error');
},
complete: function (){
$this.removeClass('loading');
process=false;
},
});
});
},
sidebarMenu: function (){
var heightMegaMenu=$(".widget_nav_mega_menu #menu-categories").height();
var heightMegaNavigation=$(".categories-menu-dropdown").height();
var subMenuHeight=$(".widget_nav_mega_menu ul > li.menu-item-design-sized > .sub-menu-dropdown, .widget_nav_mega_menu ul > li.menu-item-design-full-width > .sub-menu-dropdown");
var megaNavigationHeight=$(".categories-menu-dropdown ul > li.menu-item-design-sized > .sub-menu-dropdown, .categories-menu-dropdown ul > li.menu-item-design-full-width > .sub-menu-dropdown");
subMenuHeight.css("min-height", heightMegaMenu + "px"
);
megaNavigationHeight.css("min-height", heightMegaNavigation + "px"
);
},
widgetsHidable: function (){
$(document).on('click', '.widget-hidable .widget-title', function (){
var content=$(this).siblings('ul, div, form, label, select');
$(this).parent().toggleClass('widget-hidden');
content.stop().slideToggle(200);
});
},
stickyColumn: function (){
var details=$('.woodmart-sticky-column');
details.each(function (){
var $column=$(this),
offset=0;
if($('body').hasClass('enable-sticky-header')||$('.whb-sticky-row').length > 0||$('.whb-sticky-header').length > 0){
offset=150;
}
$column.find(' > .vc_column-inner > .wpb_wrapper').stick_in_parent({
offset_top: offset
});
})
},
mfpPopup: function (){
$('.gallery').magnificPopup({
delegate: ' > a',
type: 'image',
removalDelay: 500,
tClose: woodmart_settings.close,
tLoading: woodmart_settings.loading,
callbacks: {
beforeOpen: function (){
this.st.image.markup=this.st.image.markup.replace('mfp-figure', 'mfp-figure mfp-with-anim');
this.st.mainClass=woodmartTheme.popupEffect;
}},
image: {
verticalFit: true
},
gallery: {
enabled: true,
navigateByImgClick: true
},
});
$('[data-rel="mfp"]').magnificPopup({
type: 'image',
removalDelay: 500,
tClose: woodmart_settings.close,
tLoading: woodmart_settings.loading,
callbacks: {
beforeOpen: function (){
this.st.image.markup=this.st.image.markup.replace('mfp-figure', 'mfp-figure mfp-with-anim');
this.st.mainClass=woodmartTheme.popupEffect;
}},
image: {
verticalFit: true
},
gallery: {
enabled: false,
navigateByImgClick: false
},
});
$(document).on('click', '.mfp-img', function (){
var mfp=jQuery.magnificPopup.instance;
mfp.st.image.verticalFit = !mfp.st.image.verticalFit;
mfp.currItem.img.removeAttr('style');
mfp.updateSize();
});
},
parallax: function (){
if($(window).width() <=1024) return;
$('.parallax-yes').each(function (){
var $bgobj=$(this);
$(window).scroll(function (){
var yPos=-($(window).scrollTop() / $bgobj.data('speed'));
var coords='center ' + yPos + 'px';
$bgobj.css({
backgroundPosition: coords
});
});
});
$('.woodmart-parallax').each(function (){
var $this=$(this);
if($this.hasClass('wpb_column')){
$this.find('> .vc_column-inner').parallax("50%", 0.3);
}else{
$this.parallax("50%", 0.3);
}});
},
scrollTop: function (){
$(window).scroll(function (){
if($(this).scrollTop() > 100){
$('.scrollToTop').addClass('button-show');
}else{
$('.scrollToTop').removeClass('button-show');
}});
$('.scrollToTop').on('click', function (){
$('html, body').animate({
scrollTop: 0
}, 800);
return false;
});
},
btnsToolTips: function (){
if($(window).width() <=1024) return;
var $tooltips=$('.woodmart-css-tooltip, .product-grid-item:not(.woodmart-hover-base):not(.woodmart-hover-icons) .woodmart-buttons > div a, .woodmart-hover-base.product-in-carousel .woodmart-buttons > div a'),
$bootstrapTooltips=$(woodmartTheme.bootstrapTooltips);
$tooltips.each(function (){
$(this).find('.woodmart-tooltip-label').remove();
$(this).addClass('woodmart-tltp').prepend('
' + $(this).text() + '');
$(this).find('.woodmart-tooltip-label').trigger('mouseover');
})
.off('mouseover.tooltips')
.on('mouseover.tooltips', function (){
var $label=$(this).find('.woodmart-tooltip-label'),
width=$label.outerWidth();
if($('body').hasClass('rtl')){
$label.css({
marginRight: - parseInt(width / 2)
})
}else{
$label.css({
marginLeft: - parseInt(width / 2)
})
}});
$bootstrapTooltips.tooltip({
animation: false,
container: 'body',
trigger: 'hover',
title: function (){
if($(this).find('.added_to_cart').length > 0) return $(this).find('.add_to_cart_button').text();
return $(this).text();
}});
},
stickyFooter: function (){
if(!$('body').hasClass('sticky-footer-on')||$(window).width() <=1024) return;
var $footer=$('.footer-container'),
$page=$('.main-page-wrapper'),
$window=$(window);
if($('.woodmart-prefooter').length > 0){
$page=$('.woodmart-prefooter');
}
var footerOffset=function (){
$page.css({
marginBottom: $footer.outerHeight()
})
};
$window.on('resize', footerOffset);
$footer.imagesLoaded(function (){
footerOffset();
});
var footerSafariFix=function (){
if(!$('html').hasClass('browser-Safari')) return;
var windowScroll=$window.scrollTop();
var footerOffsetTop=$(document).outerHeight() - $footer.outerHeight();
if(footerOffsetTop < windowScroll + $footer.outerHeight() + $window.outerHeight()){
$footer.addClass('visible-footer');
}else{
$footer.removeClass('visible-footer');
}};
footerSafariFix();
$window.on('scroll', footerSafariFix);
},
backHistory: function (){
history.go(-1);
setTimeout(function (){
$('.filters-area').removeClass('filters-opened').stop().hide();
$('.open-filters').removeClass('btn-opened');
if($(window).width() <=1024){
$('.woodmart-product-categories').removeClass('categories-opened').stop().hide();
$('.woodmart-show-categories').removeClass('button-open');
}
woodmartThemeModule.btnsToolTips();
woodmartThemeModule.categoriesAccordion();
woodmartThemeModule.woocommercePriceSlider();
}, 20);
},
ajaxSearch: function (){
if(typeof ($.fn.devbridgeAutocomplete)=='undefined') return;
var escapeRegExChars=function (value){
return value.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&");
};
$('form.woodmart-ajax-search').each(function (){
var $this=$(this),
number=parseInt($this.data('count')),
thumbnail=parseInt($this.data('thumbnail')),
productCat=$this.find('[name="product_cat"]'),
$results=$this.parent().find('.woodmart-search-results'),
postType=$this.data('post_type'),
url=woodmart_settings.ajaxurl + '?action=woodmart_ajax_search',
price=parseInt($this.data('price'));
if(number > 0) url +='&number=' + number;
url +='&post_type=' + postType;
$results.on('click', '.view-all-results', function (){
$this.submit();
});
if(productCat.length&&productCat.val()!==''){
url +='&product_cat=' + productCat.val();
}
$this.find('[type="text"]').devbridgeAutocomplete({
serviceUrl: url,
appendTo: $results,
onSelect: function (suggestion){
if(suggestion.permalink.length > 0)
window.location.href=suggestion.permalink;
},
onSearchStart: function (query){
$this.addClass('search-loading');
},
beforeRender: function (container){
if(container[0].childElementCount > 2)
$(container).append('
' + woodmart_settings.all_results + '
');
},
onSearchComplete: function (query, suggestions){
$this.removeClass('search-loading');
if($(window).width() >=1024&&(!woodmartTheme.disableNanoScrollerWebkit&&woodmart_settings.disable_nanoscroller!='disable')){
$(".woodmart-scroll").nanoScroller({
paneClass: 'woodmart-scroll-pane',
sliderClass: 'woodmart-scroll-slider',
contentClass: 'woodmart-scroll-content',
preventPageScrolling: false
});
}
$(document).trigger('wood-images-loaded');
},
formatResult: function (suggestion, currentValue){
if(currentValue=='&') currentValue="&";
var pattern='(' + escapeRegExChars(currentValue) + ')',
returnValue='';
if(thumbnail&&suggestion.thumbnail){
returnValue +='
' + suggestion.thumbnail + '
';
}
returnValue +='
' + suggestion.value
.replace(new RegExp(pattern, 'gi'), '$1<\/strong>')
.replace(//g, '>')
.replace(/"/g, '"')
.replace(/<(\/?strong)>/g, '<$1>') + '
';
if(suggestion.no_found) returnValue='
' + suggestion.value + '
';
if(price&&suggestion.price){
returnValue +='
' + suggestion.price + '
';
}
return returnValue;
}});
if(productCat.length){
var searchForm=$this.find('[type="text"]').devbridgeAutocomplete(),
serviceUrl=woodmart_settings.ajaxurl + '?action=woodmart_ajax_search';
if(number > 0) serviceUrl +='&number=' + number;
serviceUrl +='&post_type=' + postType;
productCat.on('cat_selected', function (){
if(productCat.val()!=''){
searchForm.setOptions({
serviceUrl: serviceUrl + '&product_cat=' + productCat.val()
});
}else{
searchForm.setOptions({
serviceUrl: serviceUrl
});
}
searchForm.hide();
searchForm.onValueChange();
});
}
$('body').on('click', function (){
$this.find('[type="text"]').devbridgeAutocomplete('hide');
});
$('.woodmart-search-results').on('click', function (e){
e.stopPropagation();
});
});
},
searchFullScreen: function (){
var body=$('body'),
searchWrapper=$('.woodmart-search-full-screen'),
offset=0;
body.on('click', '.search-button:not(.mobile-search-icon) > a', function (e){
e.preventDefault();
if($(this).parent().find('.woodmart-search-dropdown').length > 0) return;
if(body.hasClass('global-search-dropdown')||$(window).width() < 1024) return;
if(isOpened()){
closeWidget();
}else{
setTimeout(function (){
openWidget();
}, 10);
}})
body.on("click", ".woodmart-close-search, .main-page-wrapper, .header-banner", function (event){
if(!$(event.target).is('.woodmart-close-search')&&$(event.target).closest(".woodmart-search-full-screen").length) return;
if(isOpened()){
closeWidget();
}});
var closeByEsc=function (e){
if(e.keyCode===27){
closeWidget();
body.unbind('keyup', closeByEsc);
}};
var closeWidget=function (){
$('body').removeClass('woodmart-search-opened');
searchWrapper.removeClass('search-overlap');
};
var openWidget=function (){
var bar=$('#wpadminbar').outerHeight();
var offset=0;
if($('.whb-sticked').length > 0){
if($('.whb-clone').length > 0)
offset=$('.whb-sticked').outerHeight() + bar;
else
offset=$('.whb-main-header').outerHeight() + bar;
}else{
offset=$('.whb-main-header').outerHeight() + bar;
if($('body').hasClass('header-banner-display')){
offset +=$('.header-banner').outerHeight();
}}
searchWrapper.css('top', offset);
body.on('keyup', closeByEsc);
$('body').addClass('woodmart-search-opened');
searchWrapper.addClass('search-overlap');
setTimeout(function (){
searchWrapper.find('input[type="text"]').focus();
$(window).one('scroll', function (){
if(isOpened()){
closeWidget();
}});
}, 300);
};
var isOpened=function (){
return $('body').hasClass('woodmart-search-opened');
};},
countDownTimer: function (){
$('.woodmart-timer').each(function (){
var time=moment.tz($(this).data('end-date'), $(this).data('timezone'));
$(this).countdown(time.toDate(), function (event){
$(this).html(event.strftime(''
+ '
%-D ' + woodmart_settings.countdown_days + ' '
+ '
%H ' + woodmart_settings.countdown_hours + ' '
+ '
%M ' + woodmart_settings.countdown_mins + ' '
+ '
%S ' + woodmart_settings.countdown_sec + ''));
});
});
},
nanoScroller: function (){
if($(window).width() < 1024||(woodmart_settings.disable_nanoscroller=='webkit'&&(jscd.browser=='Chrome'||jscd.browser=='Opera'||jscd.browser=='Safari'))||woodmart_settings.disable_nanoscroller=='disable') return;
$(".woodmart-scroll").nanoScroller({
paneClass: 'woodmart-scroll-pane',
sliderClass: 'woodmart-scroll-slider',
contentClass: 'woodmart-scroll-content',
preventPageScrolling: false
});
$('body').on('wc_fragments_refreshed wc_fragments_loaded added_to_cart', function (){
$(".widget_shopping_cart .woodmart-scroll").nanoScroller({
paneClass: 'woodmart-scroll-pane',
sliderClass: 'woodmart-scroll-slider',
contentClass: 'woodmart-scroll-content',
preventPageScrolling: false
});
$(".widget_shopping_cart .woodmart-scroll-content").scroll(function (){
$(document).trigger('wood-images-loaded');
})
});
},
gradientShift: function (){
$('.woodmart_gradient').each(function (){
var selector=$(this);
var parent=selector.prev();
parent.css('position', 'relative');
parent.prepend(selector);
});
},
lazyLoading: function (){
if(!window.addEventListener||!window.requestAnimationFrame||!document.getElementsByClassName) return;
var pItem=document.getElementsByClassName('woodmart-lazy-load'), pCount, timer;
$(document).on('wood-images-loaded added_to_cart', function (){
inView();
})
$('.woodmart-scroll-content, .woodmart-sidebar-content').scroll(function (){
$(document).trigger('wood-images-loaded');
})
$('.wc-tabs > li').on('click', function (){
$(document).trigger('wood-images-loaded');
});
window.addEventListener('scroll', scroller, false);
window.addEventListener('resize', scroller, false);
if(MutationObserver){
var observer=new MutationObserver(function (){
if(pItem.length!==pCount) inView();
});
observer.observe(document.body, { subtree: true, childList: true, attributes: true, characterData: true });
}
inView();
function scroller(){
timer=timer||setTimeout(function (){
timer=null;
inView();
}, 100);
}
function inView(){
if(pItem.length) requestAnimationFrame(function (){
var offset=parseInt(woodmart_settings.lazy_loading_offset);
var wT=window.pageYOffset, wB=wT + window.innerHeight + offset, cRect, pT, pB, p=0;
while (p < pItem.length){
cRect=pItem[p].getBoundingClientRect();
pT=wT + cRect.top;
pB=pT + cRect.height;
if(wT < pB&&wB > pT&&!pItem[p].loaded){
loadFullImage(pItem[p], p);
}
else p++;
}
pCount=pItem.length;
});
}
function loadFullImage(item, i){
item.onload=addedImg;
item.src=item.dataset.woodSrc;
if(typeof (item.dataset.srcset)!='undefined'){
item.srcset=item.dataset.srcset;
}
item.loaded=true
function addedImg(){
requestAnimationFrame(function (){
item.classList.add('woodmart-loaded')
var $masonry=jQuery(item).parents('.view-masonry .gallery-images, .grid-masonry, .masonry-container');
if($masonry.length > 0){
$masonry.isotope('layout');
}
var $categories=jQuery(item).parents('.categories-masonry');
if($categories.length > 0){
$categories.packery();
}});
}}
},
}}());
})(jQuery);
jQuery(document).ready(function (){
if(!wooFile){
woodmartThemeModule.init();
}});
var wooFile=true;
(function ($){
"use strict";
var woodmartTheme={
popupEffect: 'mfp-move-horizontal',
supports_html5_storage: false,
shopLoadMoreBtn: '.woodmart-products-load-more.load-on-scroll',
ajaxLinks: '.woodmart-product-categories a, .widget_product_categories a, .widget_layered_nav_filters a, .woocommerce-widget-layered-nav a, .filters-area:not(.custom-content) a, body.post-type-archive-product:not(.woocommerce-account) .woocommerce-pagination a, body.tax-product_cat:not(.woocommerce-account) .woocommerce-pagination a, .woodmart-shop-tools a, .woodmart-woocommerce-layered-nav a, .woodmart-price-filter a, .woodmart-clear-filters-wrapp a, .woodmart-woocommerce-sort-by a',
mainCarouselArg: {
rtl: $('body').hasClass('rtl'),
items: woodmart_settings.product_gallery.thumbs_slider.position=='centered' ? 2:1,
autoplay: woodmart_settings.product_slider_autoplay,
autoplayTimeout: 3000,
loop: woodmart_settings.product_slider_autoplay,
center: woodmart_settings.product_gallery.thumbs_slider.position=='centered',
startPosition: woodmart_settings.product_gallery.thumbs_slider.position=='centered' ? woodmart_settings.centered_gallery_start:0,
dots: false,
nav: true,
autoHeight: woodmart_settings.product_slider_auto_height=='yes',
navText: false,
onRefreshed: function (){
$(window).resize();
}}
};
try {
woodmartTheme.supports_html5_storage=('sessionStorage' in window&&window.sessionStorage!==null);
window.sessionStorage.setItem('woodmart', 'test');
window.sessionStorage.removeItem('woodmart');
} catch (err){
woodmartTheme.supports_html5_storage=false;
}
woodmartThemeModule.productFilters=function (){
var removeValue=function ($mainInput, currentVal){
if($mainInput.length==0) return;
var mainInputVal=$mainInput.val();
if(mainInputVal.indexOf(',') > 0){
$mainInput.val(mainInputVal.replace(',' + currentVal, '').replace(currentVal + ',', ''));
}else{
$mainInput.val(mainInputVal.replace(currentVal, ''));
}}
$('.woodmart-pf-checkboxes li > .pf-value').on('click', function (e){
e.preventDefault();
var $this=$(this);
var $li=$this.parent();
var $widget=$this.parents('.woodmart-pf-checkboxes');
var $mainInput=$widget.find('.result-input');
var $results=$widget.find('.woodmart-pf-results');
var multiSelect=$widget.hasClass('multi_select');
var mainInputVal=$mainInput.val();
var currentText=$this.data('title');
var currentVal=$this.data('val');
if(multiSelect){
if(!$li.hasClass('pf-active')){
if(mainInputVal==''){
$mainInput.val(currentVal);
}else{
$mainInput.val(mainInputVal + ',' + currentVal);
}
$results.prepend('
' + currentText + '');
$li.addClass('pf-active');
}else{
removeValue($mainInput, currentVal);
$results.find('li[data-title="' + currentVal + '"]').remove();
$li.removeClass('pf-active');
}}else{
if(!$li.hasClass('pf-active')){
$mainInput.val(currentVal);
$results.find('.selected-value').remove();
$results.prepend('
' + currentText + '');
$li.parents('.woodmart-scroll-content').find('.pf-active').removeClass('pf-active');
$li.addClass('pf-active');
}else{
$mainInput.val('');
$results.find('.selected-value').remove();
$li.removeClass('pf-active');
}}
});
$('.woodmart-pf-checkboxes').on('click', '.selected-value', function (){
var $this=$(this);
var $widget=$this.parents('.woodmart-pf-checkboxes');
var $mainInput=$widget.find('.result-input');
var currentVal=$this.data('title');
if(currentVal=='price-filter'){
var min=$this.data('min');
var max=$this.data('max');
var $slider=$widget.find('.price_slider_widget');
$slider.slider('values', 0, min);
$slider.slider('values', 1, max);
$widget.find('.min_price').val('');
$widget.find('.max_price').val('');
$(document.body).trigger('filter_price_slider_slide', [min, max, min, max, $slider]);
return;
}
removeValue($mainInput, currentVal);
$widget.find('.pf-value[data-val="' + currentVal + '"]').parent().removeClass('pf-active');
$this.remove();
});
$('.woodmart-pf-checkboxes').each(function (){
var $this=$(this);
var $btn=$this.find('.woodmart-pf-title');
var $list=$btn.siblings('.woodmart-pf-dropdown');
var multiSelect=$this.hasClass('multi_select');
$btn.on('click', function (e){
var target=e.target;
if($(target).is($btn.find('.selected-value'))) return;
if(!$this.hasClass('opened')){
$this.addClass('opened');
$list.slideDown(100);
setTimeout(function (){
woodmartThemeModule.nanoScroller();
}, 300);
}else{
close();
}});
$(document).on('click', function (e){
var target=e.target;
if($this.hasClass('opened')&&(multiSelect&&!$(target).is($this)&&!$(target).parents().is($this))||(!multiSelect&&!$(target).is($btn)&&!$(target).parents().is($btn))){
close();
}});
var close=function (){
$this.removeClass('opened');
$list.slideUp(100);
}});
var removeEmptyValues=function ($selector){
$selector.find('.woodmart-pf-checkboxes').each(function (){
if(!$(this).find('input[type="hidden"]').val()){
$(this).find('input[type="hidden"]').remove();
}});
}
var changeFormAction=function ($form){
var activeCat=$form.find('.woodmart-pf-categories .pf-active .pf-value');
if(activeCat.length > 0){
$form.attr('action', activeCat.attr('href'));
}}
$(document.body).on('filter_price_slider_create filter_price_slider_slide', function (event, min, max, minPrice, maxPrice, $slider){
var minHtml=accounting.formatMoney(min, {
symbol: woocommerce_price_slider_params.currency_format_symbol,
decimal: woocommerce_price_slider_params.currency_format_decimal_sep,
thousand: woocommerce_price_slider_params.currency_format_thousand_sep,
precision: woocommerce_price_slider_params.currency_format_num_decimals,
format: woocommerce_price_slider_params.currency_format
});
var maxHtml=accounting.formatMoney(max, {
symbol: woocommerce_price_slider_params.currency_format_symbol,
decimal: woocommerce_price_slider_params.currency_format_decimal_sep,
thousand: woocommerce_price_slider_params.currency_format_thousand_sep,
precision: woocommerce_price_slider_params.currency_format_num_decimals,
format: woocommerce_price_slider_params.currency_format
});
$slider.siblings('.filter_price_slider_amount').find('span.from').html(minHtml);
$slider.siblings('.filter_price_slider_amount').find('span.to').html(maxHtml);
var $results=$slider.parents('.woodmart-pf-checkboxes').find('.woodmart-pf-results');
var value=$results.find('.selected-value');
if(min==minPrice&&max==maxPrice){
value.remove();
}else{
if(value.length==0){
$results.prepend('
' + minHtml + ' - ' + maxHtml + '');
}else{
value.html(minHtml + ' - ' + maxHtml);
}}
$(document.body).trigger('price_slider_updated', [min, max]);
});
$('.woodmart-pf-price-range .price_slider_widget').each(function (){
var $this=$(this);
var $minInput=$this.siblings('.filter_price_slider_amount').find('.min_price');
var $maxInput=$this.siblings('.filter_price_slider_amount').find('.max_price');
var minPrice=parseInt($minInput.data('min'));
var maxPrice=parseInt($maxInput.data('max'));
var currentMinPrice=parseInt($minInput.val());
var currentMaxPrice=parseInt($maxInput.val());
$('.price_slider_widget, .price_label').show();
$this.slider({
range: true,
animate: true,
min: minPrice,
max: maxPrice,
values: [currentMinPrice, currentMaxPrice],
create: function (){
if(currentMinPrice==minPrice&¤tMaxPrice==maxPrice){
$minInput.val('');
$maxInput.val('');
}
$(document.body).trigger('filter_price_slider_create', [currentMinPrice, currentMaxPrice, minPrice, maxPrice, $this]);
},
slide: function (event, ui){
if(ui.values[0]==minPrice&&ui.values[1]==maxPrice){
$minInput.val('');
$maxInput.val('');
}else{
$minInput.val(ui.values[0]);
$maxInput.val(ui.values[1]);
}
$(document.body).trigger('filter_price_slider_slide', [ui.values[0], ui.values[1], minPrice, maxPrice, $this]);
},
change: function (event, ui){
$(document.body).trigger('price_slider_change', [ui.values[0], ui.values[1]]);
}});
});
$('.woodmart-product-filters').one('click', '.woodmart-pf-btn button', function (e){
var $form=$(this).parents('.woodmart-product-filters');
removeEmptyValues($form);
changeFormAction($form);
if(typeof ($.fn.pjax)=='undefined'||!$form.hasClass('with-ajax')) return;
$.pjax({
container: '.main-page-wrapper',
timeout: woodmart_settings.pjax_timeout,
url: $form.attr('action'),
data: $form.serialize(),
scrollTo: false
});
$(this).prop('disabled', true);
});
$('.woodmart-pf-checkboxes .pf-active > .pf-value').each(function (){
var resultsWrapper=$(this).parents('.woodmart-pf-checkboxes').find('.woodmart-pf-results');
resultsWrapper.prepend('
' + $(this).data('title') + '');
});
};
woodmartThemeModule.stickySidebarBtn=function (){
var $trigger=$('.woodmart-show-sidebar-btn');
var $stickyBtn=$('.shop-sidebar-opener:not(.toolbar)');
if($stickyBtn.length <=0||$trigger.length <=0||$(window).width() >=1024) return;
var stickySidebarBtnToggle=function (){
var btnOffset=$trigger.offset().top + $trigger.outerHeight();
var windowScroll=$(window).scrollTop();
if(btnOffset < windowScroll){
$stickyBtn.addClass('woodmart-sidebar-btn-shown');
}else{
$stickyBtn.removeClass('woodmart-sidebar-btn-shown');
}};
stickySidebarBtnToggle();
$(window).scroll(stickySidebarBtnToggle);
$(window).resize(stickySidebarBtnToggle);
};
woodmartThemeModule.productImages=function (){
var currentImage,
$productGallery=$('.woocommerce-product-gallery'),
$mainImages=$('.woocommerce-product-gallery__wrapper'),
$thumbs=$productGallery.find('.thumbnails'),
currentClass='current-image',
PhotoSwipeTrigger='.woodmart-show-product-gallery';
$thumbs.addClass('thumbnails-ready');
if($productGallery.hasClass('image-action-popup')){
PhotoSwipeTrigger +=', .woocommerce-product-gallery__image a';
}
$productGallery.on('click', '.woocommerce-product-gallery__image a', function (e){
e.preventDefault();
});
$productGallery.on('click', PhotoSwipeTrigger, function (e){
e.preventDefault();
currentImage=$(this).attr('href');
var items=getProductItems();
woodmartThemeModule.callPhotoSwipe(getCurrentGalleryIndex(e), items);
});
$thumbs.on('click', '.image-link', function (e){
e.preventDefault();
});
var getCurrentGalleryIndex=function (e){
if($mainImages.hasClass('owl-carousel'))
return $mainImages.find('.owl-item.active').index();
else return $(e.currentTarget).parent().parent().index();
};
var getProductItems=function (){
var items=[];
$mainImages.find('figure a img').each(function (){
var src=$(this).attr('data-large_image'),
width=$(this).attr('data-large_image_width'),
height=$(this).attr('data-large_image_height'),
caption=$(this).data('caption');
items.push({
src: src,
w: width,
h: height,
title: (woodmart_settings.product_images_captions=='yes') ? caption:false
});
});
return items;
};
if($productGallery.hasClass('image-action-zoom')){
var zoom_target=$('.woocommerce-product-gallery__image');
var image_to_zoom=zoom_target.find('img');
if(image_to_zoom.attr('width') > $('.woocommerce-product-gallery').width()){
zoom_target.trigger('zoom.destroy');
zoom_target.zoom({
touch: false
});
}}
};
woodmartThemeModule.stickyAddToCart=function (){
var $trigger=$('.summary-inner .cart');
var $stickyBtn=$('.woodmart-sticky-btn');
if($stickyBtn.length <=0||$trigger.length <=0||($(window).width() <=768&&$stickyBtn.hasClass('mobile-off'))) return;
var summaryOffset=$trigger.offset().top + $trigger.outerHeight();
var $scrollToTop=$('.scrollToTop');
var stickyAddToCartToggle=function (){
var windowScroll=$(window).scrollTop();
var windowHeight=$(window).height();
var documentHeight=$(document).height();
if(summaryOffset < windowScroll&&windowScroll + windowHeight!=documentHeight){
$stickyBtn.addClass('woodmart-sticky-btn-shown');
$scrollToTop.addClass('woodmart-sticky-btn-shown');
}else if(windowScroll + windowHeight==documentHeight||summaryOffset > windowScroll){
$stickyBtn.removeClass('woodmart-sticky-btn-shown');
$scrollToTop.removeClass('woodmart-sticky-btn-shown');
}};
stickyAddToCartToggle();
$(window).scroll(stickyAddToCartToggle);
$('.woodmart-sticky-add-to-cart').on('click', function (e){
e.preventDefault();
$('html, body').animate({
scrollTop: $('.summary-inner').offset().top
}, 800);
});
$('.woodmart-sticky-btn-wishlist').on('click', function (e){
if(!$(this).hasClass('exists')) e.preventDefault();
$('.summary-inner > .yith-wcwl-add-to-wishlist .add_to_wishlist').trigger('click');
});
$('body').on('added_to_wishlist', function (){
$('.woodmart-sticky-btn-wishlist').addClass('exists');
});
};
woodmartThemeModule.loginDropdown=function (){
if($(window).width() <=1024) return;
$('.menu-item-register:not(.login-side-opener)').on('mouseover', function (){
$(this).addClass('opened');
}).on('mouseout', function (event){
if(!$(event.target).is('input')){
$(this).removeClass('opened');
}}).on('mouseleave', function (){
var $this=$(this);
setTimeout(function (){
$this.removeClass('opened');
}, 300);
});
};
woodmartThemeModule.loginSidebar=function (){
var body=$('body');
var loginFormSide=$('.login-form-side');
var closeSide=$('.woodmart-close-side');
$('.login-side-opener').on('click', function (e){
e.preventDefault();
if(isOpened()){
closeWidget();
}else{
setTimeout(function (){
openWidget();
}, 10);
}});
body.on('click touchstart', '.woodmart-close-side', function (){
if(isOpened()) closeWidget();
});
body.on('click', '.close-side-widget', function (e){
e.preventDefault();
if(isOpened()) closeWidget();
});
$(document).keyup(function (e){
if(e.keyCode===27&&isOpened()) closeWidget();
});
var closeWidget=function (){
loginFormSide.removeClass('woodmart-login-side-opened');
closeSide.removeClass('woodmart-close-side-opened');
};
var openWidget=function (){
loginFormSide.addClass('woodmart-login-side-opened');
closeSide.addClass('woodmart-close-side-opened');
};
var isOpened=function (){
return loginFormSide.hasClass('woodmart-login-side-opened');
};};
woodmartThemeModule.shopLoader=function (){
var loaderClass='.woodmart-shop-loader',
contentClass='.products[data-source="main_loop"]',
sidebarClass='.area-sidebar-shop',
sidebarLeftClass='sidebar-left',
hiddenClass='hidden-loader',
hiddenTopClass='hidden-from-top',
hiddenBottomClass='hidden-from-bottom';
var loaderVerticalPosition=function (){
var $products=$(contentClass),
$loader=$products.parent().find(loaderClass);
if($products.length < 1) return;
var offset=$(window).height() / 2,
scrollTop=$(window).scrollTop(),
holderTop=$products.offset().top - offset,
holderHeight=$products.height(),
holderBottom=holderTop + holderHeight - 130;
if(scrollTop < holderTop){
$loader.addClass(hiddenClass + ' ' + hiddenTopClass);
}else if(scrollTop > holderBottom){
$loader.addClass(hiddenClass + ' ' + hiddenBottomClass);
}else{
$loader.removeClass(hiddenClass + ' ' + hiddenTopClass + ' ' + hiddenBottomClass);
}};
var loaderHorizontalPosition=function (){
var $products=$(contentClass),
$sidebar=$(sidebarClass),
$loader=$products.parent().find(loaderClass),
sidebarWidth=$sidebar.outerWidth();
if($products.length < 1) return;
if(sidebarWidth > 0&&$sidebar.hasClass(sidebarLeftClass)){
if($('body').hasClass('rtl')){
$loader.css({
'marginLeft': - sidebarWidth / 2 - 15
})
}else{
$loader.css({
'marginLeft': sidebarWidth / 2 - 15
})
}}else if(sidebarWidth > 0){
if($('body').hasClass('rtl')){
$loader.css({
'marginLeft': sidebarWidth / 2 - 15
})
}else{
$loader.css({
'marginLeft': - sidebarWidth / 2 - 15
})
}}
};
$(window).off('scroll.loaderVerticalPosition');
$(window).off('loaderHorizontalPosition');
$(window).on('scroll.loaderVerticalPosition', loaderVerticalPosition);
$(window).on('resize.loaderHorizontalPosition', loaderHorizontalPosition);
loaderVerticalPosition();
loaderHorizontalPosition();
};
woodmartThemeModule.sortByWidget=function (){
if(typeof ($.fn.pjax)=='undefined') return;
$('.woocommerce-ordering').on('change', 'select.orderby', function (){
var $form=$(this).closest('form');
$form.find('[name="_pjax"]').remove();
$.pjax({
container: '.main-page-wrapper',
timeout: woodmart_settings.pjax_timeout,
url: '?' + $form.serialize(),
scrollTo: false
});
});
$('.woocommerce-ordering').submit(function (e){
e.preventDefault(e);
});
};
woodmartThemeModule.filterDropdowns=function (){
$('.woodmart-widget-layered-nav-dropdown-form').each(function (){
var $form=$(this);
var $select=$form.find('select');
var slug=$select.data('slug');
$select.change(function (){
var val=$(this).val();
$('input[name=filter_' + slug + ']').val(val);
});
if($().selectWoo){
$select.selectWoo({
placeholder: $select.data('placeholder'),
minimumResultsForSearch: 5,
width: '100%',
allowClear: $select.attr('multiple') ? false:true,
language: {
noResults: function (){
return $select.data('noResults');
}}
}).on('select2:unselecting', function (){
$(this).data('unselecting', true);
}).on('select2:opening', function (e){
if($(this).data('unselecting')){
$(this).removeData('unselecting');
e.preventDefault();
}});
}});
function ajaxAction($element){
var $form=$element.parent('.woodmart-widget-layered-nav-dropdown-form');
if(typeof ($.fn.pjax)=='undefined'){
return;
}
$.pjax({
container: '.main-page-wrapper',
timeout: woodmart_settings.pjax_timeout,
url: $form.attr('action'),
data: $form.serialize(),
scrollTo: false
});
}
$('.woodmart-widget-layered-nav-dropdown__submit').on('click', function (e){
if(!$(this).siblings('select').attr('multiple')||!$('body').hasClass('woodmart-ajax-shop-on')){
return;
}
ajaxAction($(this));
$(this).prop('disabled', true);
});
$('.woodmart-widget-layered-nav-dropdown-form select').on('change', function (e){
if(!$('body').hasClass('woodmart-ajax-shop-on')){
$(this).parent().submit();
return;
}
if($(this).attr('multiple')){
return;
}
ajaxAction($(this));
});
};
woodmartThemeModule.stickyDetails=function (){
if(!$('body').hasClass('woodmart-product-sticky-on')
|| $(window).width() <=1024
) return;
var details=$('.entry-summary');
details.each(function (){
var $column=$(this),
offset=40,
$inner=$column.find('.summary-inner'),
$images=$column.parent().find('.product-images-inner');
if($('body').hasClass('enable-sticky-header')||$('.whb-sticky-row').length > 0||$('.whb-sticky-header').length > 0){
offset=150;
}
$images.imagesLoaded(function (){
var diff=$inner.outerHeight() - $images.outerHeight();
if(diff < -100){
$inner.stick_in_parent({
offset_top: offset
});
}else if(diff > 100){
$images.stick_in_parent({
offset_top: offset
});
}
$(window).resize(function (){
if($(window).width() <=1024){
$inner.trigger('sticky_kit:detach');
$images.trigger('sticky_kit:detach');
}else if($inner.outerHeight() < $images.outerHeight()){
$inner.stick_in_parent({
offset_top: offset
});
}else{
$images.stick_in_parent({
offset_top: offset
});
}});
});
});
};
woodmartThemeModule.productAccordion=function (){
var $accordion=$('.wc-tabs-wrapper');
var time=300;
var hash=window.location.hash;
var url=window.location.href;
if(hash.toLowerCase().indexOf('comment-') >=0||hash==='#reviews'||hash==='#tab-reviews'){
$accordion.find('.tab-title-reviews').addClass('active');
}else if(url.indexOf('comment-page-') > 0||url.indexOf('cpage=') > 0){
$accordion.find('.tab-title-reviews').addClass('active');
}else{
$accordion.find('.woodmart-accordion-title').first().addClass('active');
}
$accordion.on('click', '.woodmart-accordion-title', function (e){
e.preventDefault();
var $this=$(this),
$panel=$this.siblings('.woocommerce-Tabs-panel');
var curentIndex=$this.parent().index();
var oldIndex=$this.parent().siblings().find('.active').parent('.woodmart-tab-wrapper').index();
if($this.hasClass('active')){
oldIndex=curentIndex;
$this.removeClass('active');
$panel.stop().slideUp(time);
}else{
$accordion.find('.woodmart-accordion-title').removeClass('active');
$accordion.find('.woocommerce-Tabs-panel').slideUp();
$this.addClass('active');
$panel.stop().slideDown(time);
}
if(oldIndex==-1) oldIndex=curentIndex;
$(window).resize();
setTimeout(function (){
$(window).resize();
if($(window).width() < 1024&&curentIndex > oldIndex){
$('html, body').animate({
scrollTop: $this.offset().top - $this.outerHeight() - $('.sticky-header').outerHeight() - 50
}, 500);
}}, time);
});
};
woodmartThemeModule.productImagesGallery=function (){
var $mainGallery=$('.woocommerce-product-gallery__wrapper:not(.quick-view-gallery)');
var $thumbs=$('.images .thumbnails');
var $mainOwl=$('.woocommerce-product-gallery__wrapper');
var thumbs_position=woodmart_settings.product_gallery.thumbs_slider.position;
if(woodmart_settings.product_gallery.images_slider){
if(woodmart_settings.product_slider_auto_height=='yes'){
$('.product-images').imagesLoaded(function (){
initMainGallery();
});
}else{
initMainGallery();
}}else if(jQuery(window).width() <=1024&&(thumbs_position=='bottom_combined'||thumbs_position=='bottom_column'||thumbs_position=='bottom_grid')){
initMainGallery();
}
if(woodmart_settings.product_gallery.thumbs_slider.enabled&&woodmart_settings.product_gallery.images_slider){
initThumbnailsMarkup();
if(woodmart_settings.product_gallery.thumbs_slider.position=='left'&&jQuery(window).width() > 1024&&typeof ($.fn.slick)!='undefined'){
initThumbnailsVertical();
}else{
initThumbnailsHorizontal();
}}
function initMainGallery(){
$mainGallery.trigger('destroy.owl.carousel');
$mainGallery.addClass('owl-carousel').owlCarousel(woodmartTheme.mainCarouselArg);
$(document).trigger('wood-images-loaded');
};
function initThumbnailsMarkup(){
var markup='';
$mainGallery.find('.woocommerce-product-gallery__image').each(function (){
var image=$(this).data('thumb'),
alt=$(this).find('a > img').attr('alt'),
title=$(this).find('a > img').attr('title');
markup +='
';
});
if($thumbs.hasClass('slick-slider')){
$thumbs.slick('unslick');
}else if($thumbs.hasClass('owl-carousel')){
$thumbs.trigger('destroy.owl.carousel');
}
$thumbs.empty();
$thumbs.append(markup);
};
function initThumbnailsVertical(){
$thumbs.slick({
slidesToShow: woodmart_settings.product_gallery.thumbs_slider.items.vertical_items,
slidesToScroll: woodmart_settings.product_gallery.thumbs_slider.items.vertical_items,
vertical: true,
verticalSwiping: true,
infinite: false,
});
$thumbs.on('click', '.product-image-thumbnail', function (e){
var i=$(this).index();
$mainOwl.trigger('to.owl.carousel', i);
});
$mainOwl.on('changed.owl.carousel', function (e){
var i=e.item.index;
$thumbs.slick('slickGoTo', i);
$thumbs.find('.active-thumb').removeClass('active-thumb');
$thumbs.find('.product-image-thumbnail').eq(i).addClass('active-thumb');
});
$thumbs.find('.product-image-thumbnail').eq(0).addClass('active-thumb');
};
function initThumbnailsHorizontal(){
$thumbs.addClass('owl-carousel').owlCarousel({
rtl: $('body').hasClass('rtl'),
items: woodmart_settings.product_gallery.thumbs_slider.items.desktop,
responsive: {
1025: {
items: woodmart_settings.product_gallery.thumbs_slider.items.desktop
},
769: {
items: woodmart_settings.product_gallery.thumbs_slider.items.tablet_landscape
},
577: {
items: woodmart_settings.product_gallery.thumbs_slider.items.tablet
},
0: {
items: woodmart_settings.product_gallery.thumbs_slider.items.mobile
}},
dots: false,
nav: true,
navText: false,
});
var $thumbsOwl=$thumbs.owlCarousel();
$thumbs.on('click', '.owl-item', function (e){
var i=$(this).index();
$thumbsOwl.trigger('to.owl.carousel', i);
$mainOwl.trigger('to.owl.carousel', i);
});
$mainOwl.on('changed.owl.carousel', function (e){
var i=e.item.index;
$thumbsOwl.trigger('to.owl.carousel', i);
$thumbs.find('.active-thumb').removeClass('active-thumb');
$thumbs.find('.product-image-thumbnail').eq(i).addClass('active-thumb');
});
$thumbs.find('.product-image-thumbnail').eq(0).addClass('active-thumb');
};};
woodmartThemeModule.addToCart=function (){
var that=this;
var timeoutNumber=0;
var timeout;
that.addToCartAllTypes();
$('body').on('added_to_cart', function (event, fragments, cart_hash){
if(woodmart_settings.add_to_cart_action=='popup'){
var html=[
'
',
].join("");
$.magnificPopup.open({
removalDelay: 500,
tClose: woodmart_settings.close,
tLoading: woodmart_settings.loading,
callbacks: {
beforeOpen: function (){
this.st.mainClass=woodmartTheme.popupEffect + ' cart-popup-wrapper';
},
},
items: {
src: '',
type: 'inline'
}});
$('.white-popup').on('click', '.close-popup', function (e){
e.preventDefault();
$.magnificPopup.close();
});
closeAfterTimeout();
}else if(woodmart_settings.add_to_cart_action=='widget'){
clearTimeout(timeoutNumber);
if($('.act-scroll .woodmart-shopping-cart, .whb-sticked .woodmart-shopping-cart').length > 0){
$('.act-scroll .woodmart-shopping-cart, .whb-sticked .woodmart-shopping-cart').addClass('display-widget');
}else{
$('.whb-header .woodmart-shopping-cart').addClass('display-widget');
}
if($('.cart-widget-opener').length > 0){
$('.cart-widget-opener').trigger('click');
}
timeoutNumber=setTimeout(function (){
$('.display-widget').removeClass('display-widget');
}, 3500);
closeAfterTimeout();
}
that.btnsToolTips();
});
var closeAfterTimeout=function (){
if('yes'!==woodmart_settings.add_to_cart_action_timeout){
return false;
}
clearTimeout(timeout);
timeout=setTimeout(function (){
$('.woodmart-close-side').trigger('click');
$.magnificPopup.close();
}, parseInt(woodmart_settings.add_to_cart_action_timeout_number) * 1000);
};},
woodmartThemeModule.addToCartAllTypes=function (){
if(woodmart_settings.ajax_add_to_cart==false) return;
$('body').on('submit', 'form.cart', function (e){
var $productWrapper=$(this).parents('.single-product-page');
if($productWrapper.hasClass('product-type-external')||$productWrapper.hasClass('product-type-zakeke')) return;
e.preventDefault();
var $form=$(this),
$thisbutton=$form.find('.single_add_to_cart_button'),
data=$form.serialize();
data +='&action=woodmart_ajax_add_to_cart';
if($thisbutton.val()){
data +='&add-to-cart=' + $thisbutton.val();
}
$thisbutton.removeClass('added not-added');
$thisbutton.addClass('loading');
$(document.body).trigger('adding_to_cart', [$thisbutton, data]);
$.ajax({
url: woodmart_settings.ajaxurl,
data: data,
method: 'POST',
success: function (response){
if(!response){
return;
}
var this_page=window.location.toString();
this_page=this_page.replace('add-to-cart', 'added-to-cart');
if(response.error&&response.product_url){
window.location=response.product_url;
return;
}
if(wc_add_to_cart_params.cart_redirect_after_add==='yes'){
window.location=wc_add_to_cart_params.cart_url;
return;
}else{
$thisbutton.removeClass('loading');
var fragments=response.fragments;
var cart_hash=response.cart_hash;
if(fragments){
$.each(fragments, function (key){
$(key).addClass('updating');
});
}
if(fragments){
$.each(fragments, function (key, value){
$(key).replaceWith(value);
});
}
if(response.notices.indexOf('error') > 0){
$('body').append(response.notices);
$thisbutton.addClass('not-added');
}else{
if(woodmart_settings.add_to_cart_action=='widget')
$.magnificPopup.close();
$thisbutton.addClass('added');
$(document.body).trigger('added_to_cart', [fragments, cart_hash, $thisbutton]);
}}
},
error: function (){
console.log('ajax adding to cart error');
},
complete: function (){ },
});
});
};
woodmartThemeModule.updateWishListNumberInit=function (){
if(woodmart_settings.wishlist=='no'||$('.wishlist-count').length <=0) return;
var that=this;
if(woodmartTheme.supports_html5_storage){
try {
var wishlistNumber=sessionStorage.getItem('woodmart_wishlist_number'),
cookie_hash=Cookies.get('woodmart_wishlist_hash');
if(wishlistNumber===null||wishlistNumber===undefined||wishlistNumber===''){
wishlistNumber=0;
}
if(cookie_hash===null||cookie_hash===undefined||cookie_hash===''){
cookie_hash=0;
}
if(wishlistNumber==cookie_hash){
this.setWishListNumber(wishlistNumber);
}else{
throw 'No wishlist number';
}} catch (err){
this.updateWishListNumber();
}}else{
this.updateWishListNumber();
}
$('body').on('added_to_cart added_to_wishlist removed_from_wishlist', function (){
that.updateWishListNumber();
that.btnsToolTips();
that.woocommerceWrappTable();
});
};
woodmartThemeModule.updateCartWidgetFromLocalStorage=function (){
var that=this;
if(woodmartTheme.supports_html5_storage){
try {
var wc_fragments=$.parseJSON(sessionStorage.getItem(wc_cart_fragments_params.fragment_name));
if(wc_fragments&&wc_fragments['div.widget_shopping_cart_content']){
$.each(wc_fragments, function (key, value){
$(key).replaceWith(value);
});
$(document.body).trigger('wc_fragments_loaded');
}else{
throw 'No fragment';
}} catch (err){
console.log('cant update cart widget');
}}
};
woodmartThemeModule.updateWishListNumber=function (){
var that=this;
$.ajax({
url: woodmart_settings.ajaxurl,
data: {
action: 'woodmart_wishlist_number',
},
method: 'get',
success: function (data){
that.setWishListNumber(data);
if(woodmartTheme.supports_html5_storage){
sessionStorage.setItem('woodmart_wishlist_number', data);
}}
});
};
woodmartThemeModule.setWishListNumber=function (num){
num=($.isNumeric(num)) ? num:0;
$('.woodmart-wishlist-info-widget .wishlist-count').text(num);
};
woodmartThemeModule.quickShop=function (){
var btnSelector='.quick-shop-on.product-type-variable .add_to_cart_button';
$(document).on('click', btnSelector, function (e){
e.preventDefault();
var $this=$(this),
$product=$this.parents('.product').first(),
$content=$product.find('.quick-shop-form'),
id=$product.data('id'),
loadingClass='btn-loading';
if($this.hasClass(loadingClass)) return;
if($product.hasClass('quick-shop-loaded')){
$product.addClass('quick-shop-shown');
return;
}
$this.addClass(loadingClass);
$product.addClass('loading-quick-shop');
$.ajax({
url: woodmart_settings.ajaxurl,
data: {
action: 'woodmart_quick_shop',
id: id,
},
method: 'get',
success: function (data){
$content.append(data);
initVariationForm($product);
$('body').trigger('woodmart-quick-view-displayed');
woodmartThemeModule.swatchesVariations();
woodmartThemeModule.btnsToolTips();
},
complete: function (){
setTimeout(function (){
$this.removeClass(loadingClass);
$product.removeClass('loading-quick-shop');
$product.addClass('quick-shop-shown quick-shop-loaded');
}, 100);
},
error: function (){
},
});
})
.on('click', '.quick-shop-close', function (){
var $this=$(this),
$product=$this.parents('.product');
$product.removeClass('quick-shop-shown');
});
$(document.body).on('added_to_cart', function (){
$('.product').removeClass('quick-shop-shown');
});
function initVariationForm($product){
$product.find('.variations_form').wc_variation_form().find('.variations select:eq(0)').change();
$product.find('.variations_form').trigger('wc_variation_form');
}};
woodmartThemeModule.quickViewInit=function (){
$(document).on('click', '.open-quick-view', function (e){
e.preventDefault();
if($('.open-quick-view').hasClass('loading')){
return true;
}
var productId=$(this).data('id'),
loopName=$(this).data('loop-name'),
closeText=woodmart_settings.close,
loadingText=woodmart_settings.loading,
loop=$(this).data('loop'),
prev='',
next='',
loopBtns=$('.quick-view').find('[data-loop-name="' + loopName + '"]'),
btn=$(this);
btn.addClass('loading');
if(typeof loopBtns[loop - 1]!='undefined'){
prev=loopBtns.eq(loop - 1).addClass('quick-view-prev');
prev=$('
').append(prev.clone()).html();
}
if(typeof loopBtns[loop + 1]!='undefined'){
next=loopBtns.eq(loop + 1).addClass('quick-view-next');
next=$('
').append(next.clone()).html();
}
woodmartThemeModule.quickViewLoad(productId, btn, prev, next);
});
};
woodmartThemeModule.quickViewCarousel=function (){
$('.product-quick-view .woocommerce-product-gallery__wrapper').trigger('destroy.owl.carousel');
$('.product-quick-view .woocommerce-product-gallery__wrapper').addClass('owl-carousel').owlCarousel({
rtl: $('body').hasClass('rtl'),
items: 1,
dots: false,
nav: true,
navText: false
});
};
woodmartThemeModule.quickViewLoad=function (id, btn, prev, next){
var data={
id: id,
action: "woodmart_quick_view",
};
var initPopup=function (data){
$.magnificPopup.open({
items: {
src: '',
type: 'inline'
},
tClose: woodmart_settings.close,
tLoading: woodmart_settings.loading,
removalDelay: 500,
callbacks: {
beforeOpen: function (){
this.st.mainClass=woodmartTheme.popupEffect + ' quick-view-wrapper';
},
open: function (){
$('.variations_form').each(function (){
$(this).wc_variation_form().find('.variations select:eq(0)').change();
});
$('.variations_form').trigger('wc_variation_form');
$('body').trigger('woodmart-quick-view-displayed');
woodmartThemeModule.swatchesVariations();
woodmartThemeModule.btnsToolTips();
setTimeout(function (){
woodmartThemeModule.nanoScroller();
}, 300);
woodmartThemeModule.quickViewCarousel();
}},
});
}
$.ajax({
url: woodmart_settings.ajaxurl,
data: data,
method: 'get',
success: function (data){
if(woodmart_settings.quickview_in_popup_fix){
$.magnificPopup.close();
setTimeout(function (){
initPopup(data);
}, 500);
}else{
initPopup(data);
}},
complete: function (){
btn.removeClass('loading');
},
error: function (){
},
});
};
woodmartThemeModule.swatchesVariations=function (){
var $variation_forms=$('.variations_form');
var variationGalleryReplace=false;
$('.variations_form .label').on('click', function (e){
if($(this).siblings('.value').hasClass('with-swatches')){
e.preventDefault();
}});
$variation_forms.each(function (){
var $variation_form=$(this);
if($variation_form.data('swatches')) return;
$variation_form.data('swatches', true);
if(!$variation_form.data('product_variations')){
$variation_form.find('.swatches-select').find('> div').addClass('swatch-enabled');
}
if($('.swatches-select > div').hasClass('active-swatch')){
$variation_form.addClass('variation-swatch-selected');
}
$variation_form.on('click', '.swatches-select > div', function (){
var value=$(this).data('value');
var id=$(this).parent().data('id');
$variation_form.trigger('check_variations', ['attribute_' + id, true]);
resetSwatches($variation_form);
if($(this).hasClass('active-swatch')){
return;
}
if($(this).hasClass('swatch-disabled')) return;
$variation_form.find('select#' + id).val(value).trigger('change');
$(this).parent().find('.active-swatch').removeClass('active-swatch');
$(this).addClass('active-swatch');
$('.product-image-summary-inner .summary-inner>.price').html($('.woocommerce-variation-price .price').html());
resetSwatches($variation_form);
})
.on('click', '.reset_variations', function (event){
$variation_form.find('.active-swatch').removeClass('active-swatch');
})
.on('reset_data', function (){
var all_attributes_chosen=true;
var some_attributes_chosen=false;
$variation_form.find('.variations select').each(function (){
var attribute_name=$(this).data('attribute_name')||$(this).attr('name');
var value=$(this).val()||'';
if(value.length===0){
all_attributes_chosen=false;
}else{
some_attributes_chosen=true;
}});
if(all_attributes_chosen){
$(this).parent().find('.active-swatch').removeClass('active-swatch');
}
$variation_form.removeClass('variation-swatch-selected');
var $mainOwl=$('.woocommerce-product-gallery__wrapper.owl-carousel');
resetSwatches($variation_form);
if(!$mainOwl.hasClass('owl-carousel')) return;
if(woodmart_settings.product_slider_auto_height=='yes'){
if(!isQuickView()&&isVariationGallery('default')&&variationGalleryReplace){
$mainOwl.trigger('destroy.owl.carousel');
}
$('.product-images').imagesLoaded(function (){
$mainOwl=$mainOwl.owlCarousel(woodmartTheme.mainCarouselArg);
$mainOwl.trigger('refresh.owl.carousel');
});
}else{
$mainOwl=$mainOwl.owlCarousel(woodmartTheme.mainCarouselArg);
$mainOwl.trigger('refresh.owl.carousel');
}
var slide_go_to=woodmart_settings.product_gallery.thumbs_slider.position=='centered' ? woodmart_settings.centered_gallery_start:0;
if(isQuickView()) slide_go_to=0;
$mainOwl.trigger('to.owl.carousel', slide_go_to);
replaceMainGallery('default', $variation_form);
})
.on('reset_image', function (){
var $thumb=$('.thumbnails .product-image-thumbnail img').first();
if(!isQuickView()&&!isQuickShop($variation_form)){
$thumb.wc_reset_variation_attr('src');
}})
.on('show_variation', function (e, variation, purchasable){
if(!variation.image.src){
return;
}
var galleryHasImage=$variation_form.parents('.single-product-content').find('.thumbnails .product-image-thumbnail img[data-o_src="' + variation.image.thumb_src + '"]').length > 0;
var $firstThumb=$variation_form.parents('.single-product-content').find('.thumbnails .product-image-thumbnail img').first();
if(galleryHasImage){
$firstThumb.wc_reset_variation_attr('src');
}
if(!isQuickShop($variation_form)&&!replaceMainGallery(variation.variation_id, $variation_form)){
if($firstThumb.attr('src')!=variation.image.thumb_src){
$firstThumb.wc_set_variation_attr('src', variation.image.src);
}
woodmartThemeModule.initZoom();
}
$variation_form.addClass('variation-swatch-selected');
if(!isQuickShop($variation_form)&&!isQuickView()){
scrollToTop();
}
var $mainOwl=$('.woocommerce-product-gallery__wrapper.owl-carousel');
if(!$mainOwl.hasClass('owl-carousel')) return;
if(woodmart_settings.product_slider_auto_height=='yes'){
if(!isQuickView()&&isVariationGallery(variation.variation_id)&&variationGalleryReplace){
$mainOwl.trigger('destroy.owl.carousel');
}
$('.product-images').imagesLoaded(function (){
$mainOwl=$mainOwl.owlCarousel(woodmartTheme.mainCarouselArg);
$mainOwl.trigger('refresh.owl.carousel');
});
}else{
$mainOwl=$mainOwl.owlCarousel(woodmartTheme.mainCarouselArg);
$mainOwl.trigger('refresh.owl.carousel');
}
var $thumbs=$('.images .thumbnails');
$mainOwl.trigger('to.owl.carousel', 0);
if($thumbs.hasClass('owl-carousel')){
$thumbs.owlCarousel().trigger('to.owl.carousel', 0);
$thumbs.find('.active-thumb').removeClass('active-thumb');
$thumbs.find('.product-image-thumbnail').eq(0).addClass('active-thumb');
}else if($thumbs.hasClass('slick-slider')){
$thumbs.slick('slickGoTo', 0);
if(!$thumbs.find('.product-image-thumbnail').eq(0).hasClass('active-thumb')){
$thumbs.find('.active-thumb').removeClass('active-thumb');
$thumbs.find('.product-image-thumbnail').eq(0).addClass('active-thumb');
}}
});
})
var resetSwatches=function ($variation_form){
if(!$variation_form.data('product_variations')) return;
$variation_form.find('.variations select').each(function (){
var select=$(this);
var swatch=select.parent().find('.swatches-select');
var options=select.html();
options=$(options);
swatch.find('> div').removeClass('swatch-enabled').addClass('swatch-disabled');
options.each(function (el){
var value=$(this).val();
if($(this).hasClass('enabled')){
swatch.find('div[data-value="' + value + '"]').removeClass('swatch-disabled').addClass('swatch-enabled');
}else{
swatch.find('div[data-value="' + value + '"]').addClass('swatch-disabled').removeClass('swatch-enabled');
}});
});
};
var isQuickView=function (){
return $('.single-product-content').hasClass('product-quick-view');
};
var isQuickShop=function ($form){
return $form.parent().hasClass('quick-shop-form');
};
var isVariationGallery=function (key){
var variation_gallery_data=isQuickView() ? woodmart_qv_variation_gallery_data:woodmart_variation_gallery_data;
return typeof variation_gallery_data!=='undefined'&&variation_gallery_data&&variation_gallery_data[key];
};
var scrollToTop=function (){
if((woodmart_settings.swatches_scroll_top_desktop==1&&$(window).width() >=1024)||(woodmart_settings.swatches_scroll_top_mobile==1&&$(window).width() <=1024)){
var $page=$('html, body');
$page.stop(true);
$(window).on('mousedown wheel DOMMouseScroll mousewheel keyup touchmove', function (){
$page.stop(true);
});
$page.animate({
scrollTop: $('.product-image-summary').offset().top - 150
}, 800);
$('.woodmart-swatch').tooltip('hide');
}}
var replaceMainGallery=function (key, $variationForm){
var variation_gallery_data=isQuickView() ? woodmart_qv_variation_gallery_data:woodmart_variation_gallery_data;
if(!isVariationGallery(key)||isQuickShop($variationForm)||('default'===key&&!variationGalleryReplace)){
return false;
}
var imagesData=variation_gallery_data[key];
var $mainGallery=$variationForm.parents('.single-product-content').find('.woocommerce-product-gallery__wrapper');
$mainGallery.empty();
for (var index=0; index < imagesData.length; index++){
var $html='
';
$mainGallery.append($html);
}
woodmartThemeModule.productImagesGallery();
woodmartThemeModule.quickViewCarousel();
$('.woocommerce-product-gallery__image').trigger('zoom.destroy');
if(!isQuickView()){
woodmartThemeModule.initZoom();
}
if('default'===key){
variationGalleryReplace=false;
}else{
variationGalleryReplace=true;
}
return true;
}};
woodmartThemeModule.swatchesOnGrid=function (){
$('body').on('click', '.swatch-on-grid', function (){
var src, srcset, image_sizes;
var imageSrc=$(this).data('image-src'),
imageSrcset=$(this).data('image-srcset'),
imageSizes=$(this).data('image-sizes');
if(typeof imageSrc=='undefined') return;
var product=$(this).parents('.product-grid-item'),
image=product.find('.product-image-link > img'),
srcOrig=image.data('original-src'),
srcsetOrig=image.data('original-srcset'),
sizesOrig=image.data('original-sizes');
if(typeof srcOrig=='undefined'){
image.data('original-src', image.attr('src'));
}
if(typeof srcsetOrig=='undefined'){
image.data('original-srcset', image.attr('srcset'));
}
if(typeof sizesOrig=='undefined'){
image.data('original-sizes', image.attr('sizes'));
}
if($(this).hasClass('current-swatch')){
src=srcOrig;
srcset=srcsetOrig;
image_sizes=sizesOrig;
$(this).removeClass('current-swatch');
product.removeClass('product-swatched');
}else{
$(this).parent().find('.current-swatch').removeClass('current-swatch');
$(this).addClass('current-swatch');
product.addClass('product-swatched');
src=imageSrc;
srcset=imageSrcset;
image_sizes=imageSizes;
}
if(image.attr('src')==src) return;
product.addClass('loading-image');
image.attr('src', src).attr('srcset', srcset).attr('image_sizes', image_sizes).one('load', function (){
product.removeClass('loading-image');
});
});
};
woodmartThemeModule.productsTabs=function (){
var process=false;
$('.woodmart-products-tabs').each(function (){
var $this=$(this),
$inner=$this.find('.woodmart-tab-content'),
cache=[];
if($inner.find('.owl-carousel').length < 1){
cache[0]={
html: $inner.html()
};}
$this.find('.products-tabs-title li').on('click', function (e){
e.preventDefault();
var $this=$(this),
atts=$this.data('atts'),
index=$this.index();
if(process||$this.hasClass('active-tab-title')) return; process=true;
loadTab(atts, index, $inner, $this, cache, function (data){
if(data.html){
$inner.html(data.html);
$(document).trigger('wood-images-loaded');
woodmartThemeModule.productHover();
woodmartThemeModule.btnsToolTips();
woodmartThemeModule.shopMasonry();
woodmartThemeModule.productsLoadMore();
woodmartThemeModule.countDownTimer();
woodmartThemeModule.productLoaderPosition();
}});
});
var $nav=$this.find('.tabs-navigation-wrapper'),
$subList=$nav.find('ul'),
time=300;
$nav.on('click', '.open-title-menu', function (){
var $btn=$(this);
if($subList.hasClass('list-shown')){
$btn.removeClass('toggle-active');
$subList.stop().slideUp(time).removeClass('list-shown');
}else{
$btn.addClass('toggle-active');
$subList.addClass('list-shown');
setTimeout(function (){
$('body').one('click', function (e){
var target=e.target;
if(!$(target).is('.tabs-navigation-wrapper')&&!$(target).parents().is('.tabs-navigation-wrapper')){
$btn.removeClass('toggle-active');
$subList.removeClass('list-shown');
return false;
}});
}, 10);
}})
.on('click', 'li', function (){
var $btn=$nav.find('.open-title-menu'),
text=$(this).text();
if($subList.hasClass('list-shown')){
$btn.removeClass('toggle-active').text(text);
$subList.removeClass('list-shown');
}});
});
var loadTab=function (atts, index, holder, btn, cache, callback){
btn.parent().find('.active-tab-title').removeClass('active-tab-title');
btn.addClass('active-tab-title')
if(cache[index]){
holder.addClass('loading');
setTimeout(function (){
callback(cache[index]);
holder.removeClass('loading');
process=false;
}, 300);
return;
}
holder.addClass('loading').parent().addClass('element-loading');
btn.addClass('loading');
$.ajax({
url: woodmart_settings.ajaxurl,
data: {
atts: atts,
action: 'woodmart_get_products_tab_shortcode',
},
dataType: 'json',
method: 'POST',
success: function (data){
cache[index]=data;
callback(data);
},
error: function (data){
console.log('ajax error');
},
complete: function (){
holder.removeClass('loading').parent().removeClass('element-loading');
btn.removeClass('loading');
process=false;
woodmartThemeModule.compare();
},
});
};};
woodmartThemeModule.productsLoadMore=function (){
var process=false,
intervalID;
$('.woodmart-products-element').each(function (){
var $this=$(this),
cache=[],
inner=$this.find('.woodmart-products-holder');
if(!inner.hasClass('pagination-arrows')) return;
cache[1]={
items: inner.html(),
status: 'have-posts'
};
$this.on('recalc', function (){
calc();
});
$(window).resize(function (){
calc();
});
var calc=function (){
var height=inner.outerHeight();
$this.stop().css({ minHeight: height });
};
var body=$('body'),
btnWrap=$this.find('.products-footer'),
btnLeft=btnWrap.find('.woodmart-products-load-prev'),
btnRight=btnWrap.find('.woodmart-products-load-next'),
loadWrapp=$this.find('.woodmart-products-loader'),
scrollTop,
holderTop,
btnLeftOffset,
btnRightOffset,
holderBottom,
holderHeight,
holderWidth,
btnsHeight,
offsetArrow=50,
offset,
windowWidth;
if(body.hasClass('rtl')){
btnLeft=btnRight;
btnRight=btnWrap.find('.woodmart-products-load-prev');
}
$(window).scroll(function (){
buttonsPos();
});
function buttonsPos(){
offset=$(window).height() / 2;
windowWidth=$(window).outerWidth(true);
holderWidth=$this.outerWidth(true);
scrollTop=$(window).scrollTop();
holderTop=$this.offset().top - offset;
btnLeftOffset=$this.offset().left - offsetArrow;
btnRightOffset=holderWidth + $this.offset().left + offsetArrow - btnRight.outerWidth();
btnsHeight=btnLeft.outerHeight();
holderHeight=$this.height() - btnsHeight;
holderBottom=holderTop + holderHeight;
if($(window).width() <=1024){
btnLeftOffset=btnLeftOffset + 35;
btnRightOffset=btnRightOffset - 35;
}
btnLeft.css({
'left': btnLeftOffset + 'px'
});
btnRight.css({
'left': btnRightOffset + 'px'
});
if(scrollTop < holderTop||scrollTop > holderBottom){
btnWrap.removeClass('show-arrow');
loadWrapp.addClass('hidden-loader');
}else{
btnWrap.addClass('show-arrow');
loadWrapp.removeClass('hidden-loader');
}};
$this.find('.woodmart-products-load-prev, .woodmart-products-load-next').off('click').on('click', function (e){
e.preventDefault();
if(process||$(this).hasClass('disabled')) return; process=true;
clearInterval(intervalID);
var $this=$(this),
holder=$this.parent().parent().prev(),
next=$this.parent().find('.woodmart-products-load-next'),
prev=$this.parent().find('.woodmart-products-load-prev'),
atts=holder.data('atts'),
action='woodmart_get_products_shortcode',
ajaxurl=woodmart_settings.ajaxurl,
dataType='json',
method='POST',
paged=holder.attr('data-paged');
paged++;
if($this.hasClass('woodmart-products-load-prev')){
if(paged < 2) return;
paged=paged - 2;
}
loadProducts('arrows', atts, ajaxurl, action, dataType, method, paged, holder, $this, cache, function (data){
var isBorderedGrid=holder.hasClass('products-bordered-grid');
if(!isBorderedGrid){
holder.addClass('woodmart-animated-products');
}
if(data.items){
holder.html(data.items).attr('data-paged', paged);
holder.imagesLoaded().progress(function (){
holder.parent().trigger('recalc');
});
$(document).trigger('wood-images-loaded');
woodmartThemeModule.productHover();
woodmartThemeModule.btnsToolTips();
}
if($(window).width() < 768){
$('html, body').stop().animate({
scrollTop: holder.offset().top - 150
}, 400);
}
if(!isBorderedGrid){
var iter=0;
intervalID=setInterval(function (){
holder.find('.product-grid-item').eq(iter).addClass('woodmart-animated');
iter++;
}, 100);
}
if(paged > 1){
prev.removeClass('disabled');
}else{
prev.addClass('disabled');
}
if(data.status=='no-more-posts'){
next.addClass('disabled');
}else{
next.removeClass('disabled');
}});
});
});
woodmartThemeModule.clickOnScrollButton(woodmartTheme.shopLoadMoreBtn, false, woodmart_settings.infinit_scroll_offset);
$(document).off('click', '.woodmart-products-load-more').on('click', '.woodmart-products-load-more', function (e){
e.preventDefault();
if(process) return; process=true;
var $this=$(this),
holder=$this.parent().siblings('.woodmart-products-holder'),
source=holder.data('source'),
action='woodmart_get_products_' + source,
ajaxurl=woodmart_settings.ajaxurl,
dataType='json',
method='POST',
atts=holder.data('atts'),
paged=holder.data('paged');
paged++;
if(source=='main_loop'){
ajaxurl=$(this).attr('href');
method='GET';
}
loadProducts('load-more', atts, ajaxurl, action, dataType, method, paged, holder, $this, [], function (data){
if(data.items){
if(holder.hasClass('grid-masonry')){
isotopeAppend(holder, data.items);
}else{
holder.append(data.items);
}
holder.imagesLoaded().progress(function (){
woodmartThemeModule.clickOnScrollButton(woodmartTheme.shopLoadMoreBtn, true, woodmart_settings.infinit_scroll_offset);
});
$(document).trigger('wood-images-loaded');
holder.data('paged', paged);
woodmartThemeModule.productHover();
woodmartThemeModule.btnsToolTips();
}
if(source=='main_loop'){
$this.attr('href', data.nextPage);
if(data.status=='no-more-posts'){
$this.hide().remove();
}}
if(data.status=='no-more-posts'){
$this.hide();
}});
});
var loadProducts=function (btnType, atts, ajaxurl, action, dataType, method, paged, holder, btn, cache, callback){
var data={
atts: atts,
paged: paged,
action: action,
woo_ajax: 1,
};
if(cache[paged]){
holder.addClass('loading');
setTimeout(function (){
callback(cache[paged]);
holder.removeClass('loading');
process=false;
}, 300);
return;
}
if(btnType=='arrows') holder.addClass('loading').parent().addClass('element-loading');
btn.addClass('loading');
if(action=='woodmart_get_products_main_loop'){
var loop=holder.find('.product').last().data('loop');
data={
loop: loop,
woo_ajax: 1
};}
$.ajax({
url: ajaxurl,
data: data,
dataType: dataType,
method: method,
success: function (data){
cache[paged]=data;
callback(data);
},
error: function (data){
console.log('ajax error');
},
complete: function (){
if(btnType=='arrows') holder.removeClass('loading').parent().removeClass('element-loading');
btn.removeClass('loading');
process=false;
woodmartThemeModule.compare();
woodmartThemeModule.productHover();
woodmartThemeModule.countDownTimer();
},
});
};
var isotopeAppend=function (el, items){
var items=$(items);
el.append(items).isotope('appended', items);
el.imagesLoaded().progress(function (){
el.isotope('layout');
});
};};
woodmartThemeModule.compare=function (){
var body=$("body"),
button=$("a.compare");
body.on("click", "a.compare", function (){
$(this).addClass("loading");
});
body.on("yith_woocompare_open_popup", function (){
button.removeClass("loading");
body.addClass("compare-opened");
});
body.on('click', '#cboxClose, #cboxOverlay', function (){
body.removeClass("compare-opened");
});
};
woodmartThemeModule.woodmartCompare=function (){
var cookiesName='woodmart_compare_list';
if(woodmart_settings.is_multisite){
cookiesName +='_' + woodmart_settings.current_blog_id;
}
var $body=$("body"),
$widget=$('.woodmart-compare-info-widget'),
compareCookie=Cookies.get(cookiesName);
if($widget.length > 0){
try {
var ids=JSON.parse(compareCookie);
$widget.find('.compare-count').text(ids.length);
} catch (e){
console.log('cant parse cookies json');
}}
$body.on('click', '.woodmart-compare-btn a', function (e){
var $this=$(this),
id=$this.data('id'),
addedText=$this.data('added-text');
if($this.hasClass('added')) return true;
e.preventDefault();
$this.addClass('loading');
jQuery.ajax({
url: woodmart_settings.ajaxurl,
data: {
action: 'woodmart_add_to_compare',
id: id,
},
dataType: 'json',
method: 'GET',
success: function (response){
if(response.table){
updateCompare(response);
}else{
console.log('something wrong loading compare data ', response);
}},
error: function (data){
console.log('We cant add to compare. Something wrong with AJAX response. Probably some PHP conflict.');
},
complete: function (){
$this.removeClass('loading').addClass('added');
if($this.find('span').length > 0){
$this.find('span').text(addedText);
}else{
$this.text(addedText);
}},
});
});
$body.on('click', '.woodmart-compare-remove', function (e){
var $table=$('.woodmart-compare-table');
e.preventDefault();
var $this=$(this),
id=$this.data('id');
$table.addClass('loading');
$this.addClass('loading');
jQuery.ajax({
url: woodmart_settings.ajaxurl,
data: {
action: 'woodmart_remove_from_compare',
id: id,
},
dataType: 'json',
method: 'GET',
success: function (response){
if(response.table){
updateCompare(response);
}else{
console.log('something wrong loading compare data ', response);
}},
error: function (data){
console.log('We cant remove product compare. Something wrong with AJAX response. Probably some PHP conflict.');
},
complete: function (){
$table.removeClass('loading');
$this.addClass('loading');
},
});
});
function updateCompare(data){
if($widget.length > 0){
$widget.find('.compare-count').text(data.count);
}
if($('.woodmart-compare-table').length > 0){
$('.woodmart-compare-table').replaceWith(data.table);
}}
};
woodmartThemeModule.wishList=function (){
var body=$("body");
body.on("click", ".add_to_wishlist", function (){
$(this).parent().addClass("feid-in");
});
};
woodmartThemeModule.product360Button=function (){
$('.product-360-button a').magnificPopup({
type: 'inline',
mainClass: 'mfp-fade',
preloader: false,
tClose: woodmart_settings.close,
tLoading: woodmart_settings.loading,
fixedContentPos: false,
callbacks: {
open: function (){
$(window).resize()
},
},
});
};
woodmartThemeModule.productVideo=function (){
$('.product-video-button a').magnificPopup({
tClose: woodmart_settings.close,
tLoading: woodmart_settings.loading,
type: 'iframe',
iframe: {
patterns: {
youtube: {
index: 'youtube.com/',
id: 'v=',
src: '//www.youtube.com/embed/%id%?rel=0&autoplay=1'
}}
},
preloader: false,
fixedContentPos: false
});
};
woodmartThemeModule.loginTabs=function (){
var tabs=$('.woodmart-register-tabs'),
btn=tabs.find('.woodmart-switch-to-register'),
title=$('.col-register-text h2'),
login=tabs.find('.col-login'),
loginText=tabs.find('.login-info'),
register=tabs.find('.col-register'),
classOpened='active-register',
loginLabel=btn.data('login'),
registerLabel=btn.data('register'),
loginTitleLabel=btn.data('login-title'),
registerTitleLabel=btn.data('reg-title');
btn.on('click', function (e){
e.preventDefault();
if(isShown()){
hideRegister();
}else{
showRegister();
}
var scrollTo=$('.main-page-wrapper').offset().top - 100;
if($(window).width() < 768){
$('html, body').stop().animate({
scrollTop: tabs.offset().top - 90
}, 400);
}});
var showRegister=function (){
tabs.addClass(classOpened);
btn.text(loginLabel);
if(loginText.length > 0){
title.text(loginTitleLabel);
}};
var hideRegister=function (){
tabs.removeClass(classOpened);
btn.text(registerLabel);
if(loginText.length > 0){
title.text(registerTitleLabel);
}};
var isShown=function (){
return tabs.hasClass(classOpened);
};};
woodmartThemeModule.headerCategoriesMenu=function (){
if($(window).width() > 1024) return;
var categories=$('.header-categories-nav'),
catsUl=categories.find('.categories-menu-dropdown'),
subCategories=categories.find('.menu-item-has-children'),
button=categories.find('.menu-opener'),
time=200,
iconDropdown='
';
subCategories.find('> a').before(iconDropdown);
catsUl.on('click', '.drop-category', function (){
var sublist=$(this).parent().find('> .sub-menu-dropdown, >.sub-sub-menu');
if(sublist.hasClass('child-open')){
$(this).removeClass("act-icon");
sublist.slideUp(time).removeClass('child-open');
}else{
$(this).addClass("act-icon");
sublist.slideDown(time).addClass('child-open');
}});
categories.on('click', '.menu-opener', function (e){
e.preventDefault();
if(isOpened()){
closeCats();
}else{
openCats();
}});
catsUl.on('click', 'a', function (e){
closeCats();
catsUl.stop().attr('style', '');
});
var isOpened=function (){
return catsUl.hasClass('categories-opened');
};
var openCats=function (){
catsUl.addClass('categories-opened').stop().slideDown(time);
button.addClass('button-open');
};
var closeCats=function (){
catsUl.removeClass('categories-opened').stop().slideUp(time);
button.removeClass('button-open');
};};
woodmartThemeModule.categoriesMenu=function (){
if($(window).width() > 1024) return;
var categories=$('.woodmart-product-categories'),
subCategories=categories.find('li > ul'),
button=$('.woodmart-show-categories'),
time=200;
$('body').on('click', '.icon-drop-category', function (){
if($(this).closest('.has-sub').find('> ul').hasClass('child-open')){
$(this).removeClass("woodmart-act-icon").closest('.has-sub').find('> ul').slideUp(time).removeClass('child-open');
}else{
$(this).addClass("woodmart-act-icon").closest('.has-sub').find('> ul').slideDown(time).addClass('child-open');
}});
$('body').on('click', '.woodmart-show-categories', function (e){
e.preventDefault();
if(isOpened()){
closeCats();
}else{
openCats();
}});
$('body').on('click', '.woodmart-product-categories a', function (e){
closeCats();
categories.stop().attr('style', '');
});
var isOpened=function (){
return $('.woodmart-product-categories').hasClass('categories-opened');
};
var openCats=function (){
$('.woodmart-product-categories').addClass('categories-opened').stop().slideDown(time);
$('.woodmart-show-categories').addClass('button-open');
};
var closeCats=function (){
$('.woodmart-product-categories').removeClass('categories-opened').stop().slideUp(time);
$('.woodmart-show-categories').removeClass('button-open');
};};
woodmartThemeModule.categoriesMenuBtns=function (){
if($(window).width() > 1024) return;
var categories=$('.woodmart-product-categories'),
subCategories=categories.find('li > ul'),
iconDropdown='
';
categories.addClass('responsive-cateogires');
subCategories.parent().addClass('has-sub').find('> .category-nav-link').prepend(iconDropdown);
};
woodmartThemeModule.filtersArea=function (){
var filters=$('.filters-area'),
btn=$('.open-filters'),
time=200;
$('body').on('click', '.open-filters', function (e){
e.preventDefault();
if(isOpened()){
closeFilters();
}else{
woodmartThemeModule.openFilters(time);
setTimeout(function (){
woodmartThemeModule.shopLoader();
}, time);
}});
if(woodmart_settings.shop_filters_close=='no'){
$('body').on('click', woodmartTheme.ajaxLinks, function (){
if(isOpened()){
closeFilters();
}});
}
var isOpened=function (){
filters=$('.filters-area')
return filters.hasClass('filters-opened');
};
var closeFilters=function (){
filters=$('.filters-area')
filters.removeClass('filters-opened');
filters.stop().slideUp(time);
$('.open-filters').removeClass('btn-opened');
};};
woodmartThemeModule.openFilters=function (time){
var filters=$('.filters-area')
filters.stop().slideDown(time);
$('.open-filters').addClass('btn-opened');
setTimeout(function (){
filters.addClass('filters-opened');
$('body').removeClass('body-filters-opened');
woodmartThemeModule.nanoScroller();
$(document).trigger('wood-images-loaded');
}, time);
};
woodmartThemeModule.shopPageInit=function (){
woodmartThemeModule.shopMasonry();
woodmartThemeModule.ajaxSearch();
woodmartThemeModule.productHover();
woodmartThemeModule.btnsToolTips();
woodmartThemeModule.compare();
woodmartThemeModule.filterDropdowns();
woodmartThemeModule.sortByWidget();
woodmartThemeModule.categoriesMenuBtns();
woodmartThemeModule.categoriesAccordion();
woodmartThemeModule.woocommercePriceSlider();
woodmartThemeModule.updateCartWidgetFromLocalStorage();
woodmartThemeModule.countDownTimer();
woodmartThemeModule.nanoScroller();
woodmartThemeModule.shopLoader();
woodmartThemeModule.stickySidebarBtn();
woodmartThemeModule.productFilters();
woodmartThemeModule.clickOnScrollButton(woodmartTheme.shopLoadMoreBtn, false, woodmart_settings.infinit_scroll_offset);
$('body > .tooltip').remove();
$(document.body).on('updated_wc_div', function (){
$(document).trigger('wood-images-loaded');
});
$(document).trigger('resize.vcRowBehaviour');
};
woodmartThemeModule.ajaxFilters=function (){
if(!$('body').hasClass('woodmart-ajax-shop-on')||typeof ($.fn.pjax)=='undefined') return;
var that=this,
filtersState=false,
products=$('.products');
$('body').on('click', '.post-type-archive-product .products-footer .woocommerce-pagination a', function (e){
scrollToTop(true);
});
$(document).pjax(woodmartTheme.ajaxLinks, '.main-page-wrapper', {
timeout: woodmart_settings.pjax_timeout,
scrollTo: false
});
if(woodmart_settings.price_filter_action=='click'){
$(document).on('click', '.widget_price_filter form .button', function (){
var form=$('.widget_price_filter form');
$.pjax({
container: '.main-page-wrapper',
timeout: woodmart_settings.pjax_timeout,
url: form.attr('action'),
data: form.serialize(),
scrollTo: false
});
return false;
});
}else if(woodmart_settings.price_filter_action=='submit'){
$(document).on('submit', '.widget_price_filter form', function (event){
var container=$('.main-page-wrapper');
$.pjax.submit(event, container);
});
}
$(document).on('pjax:error', function (xhr, textStatus, error, options){
console.log('pjax error ' + error);
});
$(document).on('pjax:start', function (xhr, options){
$('.site-content').removeClass('ajax-loaded');
$('.site-content').addClass('ajax-loading');
woodmartThemeModule.hideShopSidebar();
});
$(document).on('pjax:complete', function (xhr, textStatus, options){
that.shopPageInit();
scrollToTop(false);
$(document).trigger('wood-images-loaded');
$('.woodmart-sidebar-content').scroll(function (){
$(document).trigger('wood-images-loaded');
})
$('.site-content').removeClass('ajax-loading');
});
$(document).on('pjax:beforeReplace', function (contents, options){
if($('.filters-area').hasClass('filters-opened')&&woodmart_settings.shop_filters_close=='yes'){
filtersState=true;
$('body').addClass('body-filters-opened');
}});
$(document).on('pjax:end', function (xhr, textStatus, options){
if(filtersState){
$('.filters-area').css('display', 'block');
woodmartThemeModule.openFilters(200);
filtersState=false;
}
$('.site-content').removeClass('ajax-loading');
$('.site-content').addClass('ajax-loaded');
});
var scrollToTop=function (type){
if(woodmart_settings.ajax_scroll=='no'&&type==false) return false;
var $scrollTo=$(woodmart_settings.ajax_scroll_class),
scrollTo=$scrollTo.offset().top - woodmart_settings.ajax_scroll_offset;
$('html, body').stop().animate({
scrollTop: scrollTo
}, 400);
};};
woodmartThemeModule.cartWidget=function (){
var widget=$('.cart-widget-opener'),
btn=widget.find('a'),
body=$('body');
var cartWidgetSide=$('.cart-widget-side');
var closeSide=$('.woodmart-close-side');
widget.on('click', function (e){
if(!isCart()&&!isCheckout()) e.preventDefault();
if(isOpened()){
closeWidget();
}else{
setTimeout(function (){
openWidget();
}, 10);
}});
body.on("click touchstart", ".woodmart-close-side", function (){
if(isOpened()){
closeWidget();
}});
body.on("click", ".close-side-widget", function (e){
e.preventDefault();
if(isOpened()){
closeWidget();
}});
$(document).keyup(function (e){
if(e.keyCode===27&&isOpened()) closeWidget();
});
var closeWidget=function (){
cartWidgetSide.removeClass('woodmart-cart-opened');
closeSide.removeClass('woodmart-close-side-opened');
};
var openWidget=function (){
if(isCart()||isCheckout()) return false;
cartWidgetSide.addClass('woodmart-cart-opened');
closeSide.addClass('woodmart-close-side-opened');
};
var isOpened=function (){
return cartWidgetSide.hasClass('woodmart-cart-opened');
};
var isCart=function (){
return $('body').hasClass('woocommerce-cart');
};
var isCheckout=function (){
return $('body').hasClass('woocommerce-checkout');
};};
woodmartThemeModule.woocommerceQuantity=function (){
if(!String.prototype.getDecimals){
String.prototype.getDecimals=function (){
var num=this,
match=('' + num).match(/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/);
if(!match){
return 0;
}
return Math.max(0, (match[1] ? match[1].length:0) - (match[2] ? +match[2]:0));
}}
$(document).on('click', '.plus, .minus', function (){
var $qty=$(this).closest('.quantity').find('.qty'),
currentVal=parseFloat($qty.val()),
max=parseFloat($qty.attr('max')),
min=parseFloat($qty.attr('min')),
step=$qty.attr('step');
if(!currentVal||currentVal===''||currentVal==='NaN') currentVal=0;
if(max===''||max==='NaN') max='';
if(min===''||min==='NaN') min=0;
if(step==='any'||step===''||step===undefined||parseFloat(step)==='NaN') step='1';
if($(this).is('.plus')){
if(max&&(currentVal >=max)){
$qty.val(max);
}else{
$qty.val((currentVal + parseFloat(step)).toFixed(step.getDecimals()));
}}else{
if(min&&(currentVal <=min)){
$qty.val(min);
}else if(currentVal > 0){
$qty.val((currentVal - parseFloat(step)).toFixed(step.getDecimals()));
}}
$qty.trigger('change');
});
};
woodmartThemeModule.onRemoveFromCart=function (){
$(document).on('click', '.widget_shopping_cart .remove', function (e){
e.preventDefault();
$(this).parent().addClass('removing-process');
});
};
woodmartThemeModule.woocommerceComments=function (){
var hash=window.location.hash;
var url=window.location.href;
if(hash.toLowerCase().indexOf('comment-') >=0||hash==='#reviews'||hash==='#tab-reviews'||url.indexOf('comment-page-') > 0||url.indexOf('cpage=') > 0){
setTimeout(function (){
window.scrollTo(0, 0);
}, 1);
setTimeout(function (){
if($(hash).length > 0){
$('html, body').stop().animate({
scrollTop: $(hash).offset().top - 100
}, 400);
}}, 10);
}};
woodmartThemeModule.woocommerceWrappTable=function (){
var wooTable=$(".shop_table:not(.shop_table_responsive):not(.woocommerce-checkout-review-order-table)").wrap("
");
};
woodmartThemeModule.productLoaderPosition=function (){
var recalc=function (){
$('.woodmart-products-loader').each(function (){
var $loader=$(this),
$loaderWrap=$loader.parent();
if($loader.length==0) return;
$loader.css('left', $loaderWrap.offset().left + $loaderWrap.outerWidth() / 2);
});
};
$(window).on('resize', recalc);
recalc();
};
woodmartThemeModule.initZoom=function (){
var $mainGallery=$('.woocommerce-product-gallery__wrapper:not(.quick-view-gallery)');
if(woodmart_settings.zoom_enable!='yes'){
return false;
}
$mainGallery.find('.product-image-wrap').each(function (){
var $wrapper=$(this).find('.woocommerce-product-gallery__image');
var image=$wrapper.find('img');
var zoomOptions={
touch: false
};
if('ontouchstart' in window){
zoomOptions.on='click';
}
if(image.data('large_image_width') > $(this).width()){
$wrapper.trigger('zoom.destroy');
$wrapper.zoom(zoomOptions);
}});
};
woodmartThemeModule.productHover=function (){
$('.woodmart-hover-base').each(function (){
var $product=$(this);
$product.imagesLoaded(function (){
var btnHTML='
' + 'more' + '',
content=$product.find('.hover-content'),
inner=content.find('.hover-content-inner'),
contentHeight=content.outerHeight(),
innerHeight=inner.outerHeight(),
delta=innerHeight - contentHeight;
if(content.hasClass('more-description')) return;
if(delta > 30){
content.addClass('more-description');
content.append(btnHTML);
}else if(delta > 0){
content.css('height', contentHeight + delta);
}
recalc($product);
});
});
$('body').on('click', '.more-details-btn', function (e){
e.preventDefault();
$(this).parent().addClass('show-full-description');
recalc($(this).parents('.woodmart-hover-base'));
});
if($(window).width() <=1024){
$('.woodmart-hover-base').on('click', function (e){
var hoverClass='state-hover';
if(!$(this).hasClass(hoverClass)&&woodmart_settings.base_hover_mobile_click=='no'){
e.preventDefault();
$('.' + hoverClass).removeClass(hoverClass);
$(this).addClass(hoverClass);
}});
$(document).on('click touchstart', function (e){
if($(e.target).closest('.state-hover').length==0){
$('.state-hover').removeClass('state-hover');
}});
}
var recalc=function ($el){
if($el.hasClass('product-in-carousel')){
return;
}
var heightHideInfo=$el.find('.fade-in-block').outerHeight();
$el.find('.content-product-imagin').css({
marginBottom: -heightHideInfo
});
$el.addClass('hover-ready');
};
$('.product-grid-item').each(function (){
var $el=$(this),
widthHiddenInfo=$el.outerWidth();
if($(window).width() <=1024&&$el.hasClass('woodmart-hover-icons')||!woodmart_settings.hover_width_small) return;
if(widthHiddenInfo < 255||$(window).width() <=1024){
$el.removeClass('hover-width-big').addClass('hover-width-small');
}else{
$el.removeClass('hover-width-small').addClass('hover-width-big');
}})
};
woodmartThemeModule.shopMasonry=function (){
if(typeof ($.fn.isotope)=='undefined'||typeof ($.fn.imagesLoaded)=='undefined') return;
var $container=$('.elements-grid.grid-masonry');
$container.imagesLoaded(function (){
$container.isotope({
isOriginLeft: !$('body').hasClass('rtl'),
itemSelector: '.category-grid-item, .product-grid-item',
});
});
$(window).resize(function (){
var $catsContainer=$('.categories-masonry');
var colWidth=($catsContainer.hasClass('categories-style-masonry')) ? '.category-grid-item':'.col-lg-3.category-grid-item';
$catsContainer.imagesLoaded(function (){
$catsContainer.packery({
resizable: false,
isOriginLeft: !$('body').hasClass('rtl'),
packery: {
gutter: 0,
columnWidth: colWidth
},
itemSelector: '.category-grid-item',
});
});
});
};
woodmartThemeModule.categoriesAccordion=function (){
if(woodmart_settings.categories_toggle=='no') return;
var $widget=$('.widget_product_categories'),
$list=$widget.find('.product-categories'),
time=300;
$list.find('.cat-parent').each(function (){
if($(this).find(' > .woodmart-cats-toggle').length > 0) return;
if($(this).find(' > .children').length==0) return;
$(this).append('
');
});
$list.on('click', '.woodmart-cats-toggle', function (){
var $btn=$(this),
$subList=$btn.prev();
if($subList.hasClass('list-shown')){
$btn.removeClass('toggle-active');
$subList.stop().slideUp(time).removeClass('list-shown');
}else{
$subList.parent().parent().find('> li > .list-shown').slideUp().removeClass('list-shown');
$subList.parent().parent().find('> li > .toggle-active').removeClass('toggle-active');
$btn.addClass('toggle-active');
$subList.stop().slideDown(time).addClass('list-shown');
}});
if($list.find('li.current-cat.cat-parent, li.current-cat-parent').length > 0){
$list.find('li.current-cat.cat-parent, li.current-cat-parent').find('> .woodmart-cats-toggle').click();
}};
woodmartThemeModule.woocommercePriceSlider=function (){
if(typeof woocommerce_price_slider_params==='undefined'||$('.price_slider_amount #min_price').length < 1||!$.fn.slider){
return false;
}
var $slider=$('.price_slider');
if($slider.slider('instance')!==undefined) return;
$('input#min_price, input#max_price').hide();
$('.price_slider, .price_label').show();
var min_price=$('.price_slider_amount #min_price').data('min'),
max_price=$('.price_slider_amount #max_price').data('max'),
current_min_price=parseInt(min_price, 10),
current_max_price=parseInt(max_price, 10);
if($('.products').attr('data-min_price')&&$('.products').attr('data-min_price').length > 0){
current_min_price=parseInt($('.products').attr('data-min_price'), 10);
}
if($('.products').attr('data-max_price')&&$('.products').attr('data-max_price').length > 0){
current_max_price=parseInt($('.products').attr('data-max_price'), 10);
}
$slider.slider({
range: true,
animate: true,
min: min_price,
max: max_price,
values: [current_min_price, current_max_price],
create: function (){
$('.price_slider_amount #min_price').val(current_min_price);
$('.price_slider_amount #max_price').val(current_max_price);
$(document.body).trigger('price_slider_create', [current_min_price, current_max_price]);
},
slide: function (event, ui){
$('input#min_price').val(ui.values[0]);
$('input#max_price').val(ui.values[1]);
$(document.body).trigger('price_slider_slide', [ui.values[0], ui.values[1]]);
},
change: function (event, ui){
$(document.body).trigger('price_slider_change', [ui.values[0], ui.values[1]]);
}});
setTimeout(function (){
$(document.body).trigger('price_slider_create', [current_min_price, current_max_price]);
if($slider.find('.ui-slider-range').length > 1) $slider.find('.ui-slider-range').first().remove();
}, 10);
};})(jQuery);
jQuery(document).ready(function (){
woodmartThemeModule.init();
});
!function(){function t(){}var n=this,r=n._,e=Array.prototype,o=Object.prototype,u=Function.prototype,i=e.push,c=e.slice,l=o.toString,a=o.hasOwnProperty,f=Array.isArray,s=Object.keys,p=u.bind,h=Object.create,v=function(n){return n instanceof v?n:this instanceof v?void(this._wrapped=n):new v(n)};"undefined"!=typeof exports?(exports="undefined"!=typeof module&&module.exports?module.exports=v:exports)._=v:n._=v,v.VERSION="1.8.3";var y=function(u,i,n){if(void 0===i)return u;switch(null==n?3:n){case 1:return function(n){return u.call(i,n)};case 2:return function(n,t){return u.call(i,n,t)};case 3:return function(n,t,r){return u.call(i,n,t,r)};case 4:return function(n,t,r,e){return u.call(i,n,t,r,e)}}return function(){return u.apply(i,arguments)}},d=function(n,t,r){return null==n?v.identity:v.isFunction(n)?y(n,t,r):v.isObject(n)?v.matcher(n):v.property(n)};v.iteratee=function(n,t){return d(n,t,1/0)};function g(n){return v.isObject(n)?h?h(n):(t.prototype=n,n=new t,t.prototype=null,n):{}}var m=function(c,f){return function(n){var t=arguments.length;if(t<2||null==n)return n;for(var r=1;r
":">",'"':""","'":"'","`":"`"},f=v.invert(m),b=function(t){function r(n){return t[n]}var n="(?:"+v.keys(t).join("|")+")",e=RegExp(n),u=RegExp(n,"g");return function(n){return e.test(n=null==n?"":""+n)?n.replace(u,r):n}};v.escape=b(m),v.unescape=b(f),v.result=function(n,t,r){t=null==n?void 0:n[t];return v.isFunction(t=void 0===t?r:t)?t.call(n):t};var N=0;v.uniqueId=function(n){var t=++N+"";return n?n+t:t},v.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};function B(n){return"\\"+R[n]}var T=/(.)^/,R={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},q=/\\|'|\r|\n|\u2028|\u2029/g;v.template=function(i,n,t){n=v.defaults({},n=!n&&t?t:n,v.templateSettings);var t=RegExp([(n.escape||T).source,(n.interpolate||T).source,(n.evaluate||T).source].join("|")+"|$","g"),o=0,a="__p+='";i.replace(t,function(n,t,r,e,u){return a+=i.slice(o,u).replace(q,B),o=u+n.length,t?a+="'+\n((__t=("+t+"))==null?'':_.escape(__t))+\n'":r?a+="'+\n((__t=("+r+"))==null?'':__t)+\n'":e&&(a+="';\n"+e+"\n__p+='"),n}),a+="';\n",a="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+(a=!n.variable?"with(obj||{}){\n"+a+"}\n":a)+"return __p;\n";try{var r=new Function(n.variable||"obj","_",a)}catch(n){throw n.source=a,n}t=function(n){return r.call(this,n,v)},n=n.variable||"obj";return t.source="function("+n+"){\n"+a+"}",t},v.chain=function(n){n=v(n);return n._chain=!0,n};function K(n,t){return n._chain?v(t).chain():t}v.mixin=function(r){v.each(v.functions(r),function(n){var t=v[n]=r[n];v.prototype[n]=function(){var n=[this._wrapped];return i.apply(n,arguments),K(this,t.apply(v,n))}})},v.mixin(v),v.each(["pop","push","reverse","shift","sort","splice","unshift"],function(t){var r=e[t];v.prototype[t]=function(){var n=this._wrapped;return r.apply(n,arguments),"shift"!==t&&"splice"!==t||0!==n.length||delete n[0],K(this,n)}}),v.each(["concat","join","slice"],function(n){var t=e[n];v.prototype[n]=function(){return K(this,t.apply(this._wrapped,arguments))}}),v.prototype.value=function(){return this._wrapped},v.prototype.valueOf=v.prototype.toJSON=v.prototype.value,v.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return v})}.call(this);
window.wp=window.wp||{},function(i){var e="undefined"==typeof _wpUtilSettings?{}:_wpUtilSettings;wp.template=_.memoize(function(t){var n,s={evaluate:/<#([\s\S]+?)#>/g,interpolate:/\{\{\{([\s\S]+?)\}\}\}/g,escape:/\{\{([^\}]+?)\}\}(?!\})/g,variable:"data"};return function(e){return(n=n||_.template(i("#tmpl-"+t).html(),s))(e)}}),wp.ajax={settings:e.ajax||{},post:function(e,t){return wp.ajax.send({data:_.isObject(e)?e:_.extend(t||{},{action:e})})},send:function(e,n){var t;return _.isObject(e)?n=e:(n=n||{}).data=_.extend(n.data||{},{action:e}),n=_.defaults(n||{},{type:"POST",url:wp.ajax.settings.url,context:this}),(e=(t=i.Deferred(function(t){n.success&&t.done(n.success),n.error&&t.fail(n.error),delete n.success,delete n.error,t.jqXHR=i.ajax(n).done(function(e){"1"!==e&&1!==e||(e={success:!0}),_.isObject(e)&&!_.isUndefined(e.success)?t[e.success?"resolveWith":"rejectWith"](this,[e.data]):t.rejectWith(this,[e])}).fail(function(){t.rejectWith(this,arguments)})})).promise()).abort=function(){return t.jqXHR.abort(),this},e}}}(jQuery);
!function(C,d,e,n){function t(t){var a=this;a.$form=t,a.$attributeFields=t.find(".variations select"),a.$singleVariation=t.find(".single_variation"),a.$singleVariationWrap=t.find(".single_variation_wrap"),a.$resetVariations=t.find(".reset_variations"),a.$product=t.closest(".product"),a.variationData=t.data("product_variations"),a.useAjax=!1===a.variationData,a.xhr=!1,a.loading=!0,a.$singleVariationWrap.show(),a.$form.off(".wc-variation-form"),a.getChosenAttributes=a.getChosenAttributes.bind(a),a.findMatchingVariations=a.findMatchingVariations.bind(a),a.isMatch=a.isMatch.bind(a),a.toggleResetLink=a.toggleResetLink.bind(a),t.on("click.wc-variation-form",".reset_variations",{variationForm:a},a.onReset),t.on("reload_product_variations",{variationForm:a},a.onReload),t.on("hide_variation",{variationForm:a},a.onHide),t.on("show_variation",{variationForm:a},a.onShow),t.on("click",".single_add_to_cart_button",{variationForm:a},a.onAddToCart),t.on("reset_data",{variationForm:a},a.onResetDisplayedVariation),t.on("reset_image",{variationForm:a},a.onResetImage),t.on("change.wc-variation-form",".variations select",{variationForm:a},a.onChange),t.on("found_variation.wc-variation-form",{variationForm:a},a.onFoundVariation),t.on("check_variations.wc-variation-form",{variationForm:a},a.onFindVariation),t.on("update_variation_values.wc-variation-form",{variationForm:a},a.onUpdateAttributes),setTimeout(function(){t.trigger("check_variations"),t.trigger("wc_variation_form"),a.loading=!1},100)}t.prototype.onReset=function(t){t.preventDefault(),t.data.variationForm.$attributeFields.val("").change(),t.data.variationForm.$form.trigger("reset_data")},t.prototype.onReload=function(t){var a=t.data.variationForm;a.variationData=a.$form.data("product_variations"),a.useAjax=!1===a.variationData,a.$form.trigger("check_variations")},t.prototype.onHide=function(t){t.preventDefault(),t.data.variationForm.$form.find(".single_add_to_cart_button").removeClass("wc-variation-is-unavailable").addClass("disabled wc-variation-selection-needed"),t.data.variationForm.$form.find(".woocommerce-variation-add-to-cart").removeClass("woocommerce-variation-add-to-cart-enabled").addClass("woocommerce-variation-add-to-cart-disabled")},t.prototype.onShow=function(t,a,i){t.preventDefault(),i?(t.data.variationForm.$form.find(".single_add_to_cart_button").removeClass("disabled wc-variation-selection-needed wc-variation-is-unavailable"),t.data.variationForm.$form.find(".woocommerce-variation-add-to-cart").removeClass("woocommerce-variation-add-to-cart-disabled").addClass("woocommerce-variation-add-to-cart-enabled")):(t.data.variationForm.$form.find(".single_add_to_cart_button").removeClass("wc-variation-selection-needed").addClass("disabled wc-variation-is-unavailable"),t.data.variationForm.$form.find(".woocommerce-variation-add-to-cart").removeClass("woocommerce-variation-add-to-cart-enabled").addClass("woocommerce-variation-add-to-cart-disabled")),wp.mediaelement&&t.data.variationForm.$form.find(".wp-audio-shortcode, .wp-video-shortcode").not(".mejs-container").filter(function(){return!C(this).parent().hasClass("mejs-mediaelement")}).mediaelementplayer(wp.mediaelement.settings)},t.prototype.onAddToCart=function(t){C(this).is(".disabled")&&(t.preventDefault(),C(this).is(".wc-variation-is-unavailable")?d.alert(wc_add_to_cart_variation_params.i18n_unavailable_text):C(this).is(".wc-variation-selection-needed")&&d.alert(wc_add_to_cart_variation_params.i18n_make_a_selection_text))},t.prototype.onResetDisplayedVariation=function(t){var a=t.data.variationForm;a.$product.find(".product_meta").find(".sku").wc_reset_content(),a.$product.find(".product_weight, .woocommerce-product-attributes-item--weight .woocommerce-product-attributes-item__value").wc_reset_content(),a.$product.find(".product_dimensions, .woocommerce-product-attributes-item--dimensions .woocommerce-product-attributes-item__value").wc_reset_content(),a.$form.trigger("reset_image"),a.$singleVariation.slideUp(200).trigger("hide_variation")},t.prototype.onResetImage=function(t){t.data.variationForm.$form.wc_variations_image_update(!1)},t.prototype.onFindVariation=function(t){var a=t.data.variationForm,i=a.getChosenAttributes(),e=i.data;if(i.count===i.chosenCount)if(a.useAjax)a.xhr&&a.xhr.abort(),a.$form.block({message:null,overlayCSS:{background:"#fff",opacity:.6}}),e.product_id=parseInt(a.$form.data("product_id"),10),e.custom_data=a.$form.data("custom_data"),a.xhr=C.ajax({url:wc_add_to_cart_variation_params.wc_ajax_url.toString().replace("%%endpoint%%","get_variation"),type:"POST",data:e,success:function(t){t?a.$form.trigger("found_variation",[t]):(a.$form.trigger("reset_data"),i.chosenCount=0,a.loading||(a.$form.find(".single_variation").after(''+wc_add_to_cart_variation_params.i18n_no_matching_variations_text+"
"),a.$form.find(".wc-no-matching-variations").slideDown(200)))},complete:function(){a.$form.unblock()}});else{a.$form.trigger("update_variation_values");var r=a.findMatchingVariations(a.variationData,e).shift();r?a.$form.trigger("found_variation",[r]):(a.$form.trigger("reset_data"),i.chosenCount=0,a.loading||(a.$form.find(".single_variation").after(''+wc_add_to_cart_variation_params.i18n_no_matching_variations_text+"
"),a.$form.find(".wc-no-matching-variations").slideDown(200)))}else a.$form.trigger("update_variation_values"),a.$form.trigger("reset_data");a.toggleResetLink(0"),c=e.val()||"",_=!0;if(!e.data("attribute_html")){var d=e.clone();d.find("option").removeAttr("disabled attached").removeAttr("selected"),e.data("attribute_options",d.find("option"+n).get()),e.data("attribute_html",d.html())}s.html(e.data("attribute_html"));var m=C.extend(!0,{},F);m[r]="";var l=y.findMatchingVariations(y.variationData,m);for(var v in l)if("undefined"!=typeof l[v]){var g=l[v].attributes;for(var f in g)if(g.hasOwnProperty(f)){var u=g[f],h="";if(f===r)if(l[v].variation_is_active&&(h="enabled"),u){u=C("").html(u).text();var p=s.find("option");if(p.length)for(var w=0,b=p.length;w0&&(g=parseInt(g[1],10))>=1&&g<8&&(d.isOldIOSPhone=!0)}var h=f.match(/Android\s([0-9\.]*)/),i=h?h[1]:0;i=parseFloat(i),i>=1&&(i<4.4&&(d.isOldAndroid=!0),d.androidVersion=i),d.isMobileOpera=/opera mini|opera mobi/i.test(f)}for(var j,k,l=["transform","perspective","animationName"],m=["","webkit","Moz","ms","O"],n=0;n<4;n++){c=m[n];for(var o=0;o<3;o++)j=l[o],k=c+(c?j.charAt(0).toUpperCase()+j.slice(1):j),!d[j]&&k in b&&(d[j]=k);c&&!d.raf&&(c=c.toLowerCase(),d.raf=window[c+"RequestAnimationFrame"],d.raf&&(d.caf=window[c+"CancelAnimationFrame"]||window[c+"CancelRequestAnimationFrame"]))}if(!d.raf){var p=0;d.raf=function(a){var b=(new Date).getTime(),c=Math.max(0,16-(b-p)),d=window.setTimeout(function(){a(b+c)},c);return p=b+c,d},d.caf=function(a){clearTimeout(a)}}return d.svg=!!document.createElementNS&&!!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,e.features=d,d}};e.detectFeatures(),e.features.oldIE&&(e.bind=function(a,b,c,d){b=b.split(" ");for(var e,f=(d?"detach":"attach")+"Event",g=function(){c.handleEvent.call(c)},h=0;hb-1?a-b:a<0?b+a:a},Aa={},Ba=function(a,b){return Aa[a]||(Aa[a]=[]),Aa[a].push(b)},Ca=function(a){var b=Aa[a];if(b){var c=Array.prototype.slice.call(arguments);c.shift();for(var d=0;df.currItem.fitRatio?xa||(lc(f.currItem,!1,!0),xa=!0):xa&&(lc(f.currItem),xa=!1)),Fa(da,oa.x,oa.y,s))},Ha=function(a){a.container&&Fa(a.container.style,a.initialPosition.x,a.initialPosition.y,a.initialZoomLevel,a)},Ia=function(a,b){b[E]=u+a+"px, 0px"+v},Ja=function(a,b){if(!i.loop&&b){var c=m+(sa.x*qa-a)/sa.x,d=Math.round(a-sb.x);(c<0&&d>0||c>=_b()-1&&d<0)&&(a=sb.x+d*i.mainScrollEndFriction)}sb.x=a,Ia(a,n)},Ka=function(a,b){var c=tb[a]-ra[a];return na[a]+ma[a]+c-c*(b/t)},La=function(a,b){a.x=b.x,a.y=b.y,b.id&&(a.id=b.id)},Ma=function(a){a.x=Math.round(a.x),a.y=Math.round(a.y)},Na=null,Oa=function(){Na&&(e.unbind(document,"mousemove",Oa),e.addClass(a,"pswp--has_mouse"),i.mouseUsed=!0,Ca("mouseUsed")),Na=setTimeout(function(){Na=null},100)},Pa=function(){e.bind(document,"keydown",f),N.transform&&e.bind(f.scrollWrap,"click",f),i.mouseUsed||e.bind(document,"mousemove",Oa),e.bind(window,"resize scroll",f),Ca("bindEvents")},Qa=function(){e.unbind(window,"resize",f),e.unbind(window,"scroll",r.scroll),e.unbind(document,"keydown",f),e.unbind(document,"mousemove",Oa),N.transform&&e.unbind(f.scrollWrap,"click",f),U&&e.unbind(window,p,f),Ca("unbindEvents")},Ra=function(a,b){var c=hc(f.currItem,pa,a);return b&&(ca=c),c},Sa=function(a){return a||(a=f.currItem),a.initialZoomLevel},Ta=function(a){return a||(a=f.currItem),a.w>0?i.maxSpreadZoom:1},Ua=function(a,b,c,d){return d===f.currItem.initialZoomLevel?(c[a]=f.currItem.initialPosition[a],!0):(c[a]=Ka(a,d),c[a]>b.min[a]?(c[a]=b.min[a],!0):c[a]1?1:a.fitRatio,c=a.container.style,d=b*a.w,e=b*a.h;c.width=d+"px",c.height=e+"px",c.left=a.initialPosition.x+"px",c.top=a.initialPosition.y+"px"},Ga=function(){if(da){var a=da,b=f.currItem,c=b.fitRatio>1?1:b.fitRatio,d=c*b.w,e=c*b.h;a.width=d+"px",a.height=e+"px",a.left=oa.x+"px",a.top=oa.y+"px"}}},Wa=function(a){var b="";i.escKey&&27===a.keyCode?b="close":i.arrowKeys&&(37===a.keyCode?b="prev":39===a.keyCode&&(b="next")),b&&(a.ctrlKey||a.altKey||a.shiftKey||a.metaKey||(a.preventDefault?a.preventDefault():a.returnValue=!1,f[b]()))},Xa=function(a){a&&(X||W||ea||S)&&(a.preventDefault(),a.stopPropagation())},Ya=function(){f.setScrollOffset(0,e.getScrollY())},Za={},$a=0,_a=function(a){Za[a]&&(Za[a].raf&&I(Za[a].raf),$a--,delete Za[a])},ab=function(a){Za[a]&&_a(a),Za[a]||($a++,Za[a]={})},bb=function(){for(var a in Za)Za.hasOwnProperty(a)&&_a(a)},cb=function(a,b,c,d,e,f,g){var h,i=Da();ab(a);var j=function(){if(Za[a]){if((h=Da()-i)>=d)return _a(a),f(c),void(g&&g());f((c-b)*e(h/d)+b),Za[a].raf=H(j)}};j()},db={shout:Ca,listen:Ba,viewportSize:pa,options:i,isMainScrollAnimating:function(){return ea},getZoomLevel:function(){return s},getCurrentIndex:function(){return m},isDragging:function(){return U},isZooming:function(){return _},setScrollOffset:function(a,b){ra.x=a,M=ra.y=b,Ca("updateScrollOffset",ra)},applyZoomPan:function(a,b,c,d){oa.x=b,oa.y=c,s=a,Ga(d)},init:function(){if(!j&&!k){var c;f.framework=e,f.template=a,f.bg=e.getChildByClass(a,"pswp__bg"),J=a.className,j=!0,N=e.detectFeatures(),H=N.raf,I=N.caf,E=N.transform,L=N.oldIE,f.scrollWrap=e.getChildByClass(a,"pswp__scroll-wrap"),f.container=e.getChildByClass(f.scrollWrap,"pswp__container"),n=f.container.style,f.itemHolders=y=[{el:f.container.children[0],wrap:0,index:-1},{el:f.container.children[1],wrap:0,index:-1},{el:f.container.children[2],wrap:0,index:-1}],y[0].el.style.display=y[2].el.style.display="none",Va(),r={resize:f.updateSize,scroll:Ya,keydown:Wa,click:Xa};var d=N.isOldIOSPhone||N.isOldAndroid||N.isMobileOpera;for(N.animationName&&N.transform&&!d||(i.showAnimationDuration=i.hideAnimationDuration=0),c=0;c=_b())&&(m=0),f.currItem=$b(m),(N.isOldIOSPhone||N.isOldAndroid)&&(ua=!1),a.setAttribute("aria-hidden","false"),i.modal&&(ua?a.style.position="fixed":(a.style.position="absolute",a.style.top=e.getScrollY()+"px")),void 0===M&&(Ca("initialLayout"),M=K=e.getScrollY());var g="pswp--open ";for(i.mainClass&&(g+=i.mainClass+" "),i.showHideOpacity&&(g+="pswp--animate_opacity "),g+=G?"pswp--touch":"pswp--notouch",g+=N.animationName?" pswp--css_animation":"",g+=N.svg?" pswp--svg":"",e.addClass(a,g),f.updateSize(),o=-1,ta=null,c=0;cca.min.x?a=ca.min.x:aca.min.y?b=ca.min.y:b=h&&(o+=ta+(ta>0?-h:h),c=h);for(var d=0;d0?(b=y.shift(),y[h-1]=b,o++,Ia((o+2)*sa.x,b.el.style),f.setContent(b,m-c+d+1+1)):(b=y.pop(),y.unshift(b),o--,Ia(o*sa.x,b.el.style),f.setContent(b,m+c-d-1-1));if(da&&1===Math.abs(ta)){var e=$b(z);e.initialZoomLevel!==s&&(hc(e,pa),lc(e),Ha(e))}ta=0,f.updateCurrZoomItem(),z=m,Ca("afterChange")}}},updateSize:function(b){if(!ua&&i.modal){var c=e.getScrollY();if(M!==c&&(a.style.top=c+"px",M=c),!b&&wa.x===window.innerWidth&&wa.y===window.innerHeight)return;wa.x=window.innerWidth,wa.y=window.innerHeight,a.style.height=wa.y+"px"}if(pa.x=f.scrollWrap.clientWidth,pa.y=f.scrollWrap.clientHeight,Ya(),sa.x=pa.x+Math.round(pa.x*i.spacing),sa.y=pa.y,Ja(sa.x*qa),Ca("beforeResize"),void 0!==o){for(var d,g,j,k=0;k2&&(j=za(j)),g=$b(j),g&&(x||g.needsUpdate||!g.bounds)?(f.cleanSlide(g),f.setContent(d,j),1===k&&(f.currItem=g,f.updateCurrZoomItem(!0)),g.needsUpdate=!1):-1===d.index&&j>=0&&f.setContent(d,j),g&&g.container&&(hc(g,pa),lc(g),Ha(g));x=!1}t=s=f.currItem.initialZoomLevel,ca=f.currItem.bounds,ca&&(oa.x=ca.center.x,oa.y=ca.center.y,Ga(!0)),Ca("resize")},zoomTo:function(a,b,c,d,f){b&&(t=s,tb.x=Math.abs(b.x)-oa.x,tb.y=Math.abs(b.y)-oa.y,La(na,oa));var g=Ra(a,!1),h={};Ua("x",g,h,a),Ua("y",g,h,a);var i=s,j={x:oa.x,y:oa.y};Ma(h);var k=function(b){1===b?(s=a,oa.x=h.x,oa.y=h.y):(s=(a-i)*b+i,oa.x=(h.x-j.x)*b+j.x,oa.y=(h.y-j.y)*b+j.y),f&&f(b),Ga(1===b)};c?cb("customZoomTo",0,1,c,d||e.easing.sine.inOut,k):k(1)}},eb=30,fb=10,gb={},hb={},ib={},jb={},kb={},lb=[],mb={},nb=[],ob={},pb=0,qb=la(),rb=0,sb=la(),tb=la(),ub=la(),vb=function(a,b){return a.x===b.x&&a.y===b.y},wb=function(a,b){return Math.abs(a.x-b.x)-1)&&(b(a)?a:Bb(a.parentNode,b)))},Cb={},Db=function(a,b){return Cb.prevent=!Bb(a.target,i.isClickableElement),Ca("preventDragEvent",a,b,Cb),Cb.prevent},Eb=function(a,b){return b.x=a.pageX,b.y=a.pageY,b.id=a.identifier,b},Fb=function(a,b,c){c.x=.5*(a.x+b.x),c.y=.5*(a.y+b.y)},Gb=function(a,b,c){if(a-P>50){var d=nb.length>2?nb.shift():{};d.x=b,d.y=c,nb.push(d),P=a}},Hb=function(){var a=oa.y-f.currItem.initialPosition.y;return 1-Math.abs(a/(pa.y/2))},Ib={},Jb={},Kb=[],Lb=function(a){for(;Kb.length>0;)Kb.pop();return F?(ka=0,lb.forEach(function(a){0===ka?Kb[0]=a:1===ka&&(Kb[1]=a),ka++})):a.type.indexOf("touch")>-1?a.touches&&a.touches.length>0&&(Kb[0]=Eb(a.touches[0],Ib),a.touches.length>1&&(Kb[1]=Eb(a.touches[1],Jb))):(Ib.x=a.pageX,Ib.y=a.pageY,Ib.id="",Kb[0]=Ib),Kb},Mb=function(a,b){var c,d,e,g,h=oa[a]+b[a],j=b[a]>0,k=sb.x+b.x,l=sb.x-mb.x;if(c=h>ca.min[a]||hca.min[a]&&(c=i.panEndFriction,ca.min[a]-h,d=ca.min[a]-na[a]),(d<=0||l<0)&&_b()>1?(g=k,l<0&&k>mb.x&&(g=mb.x)):ca.min.x!==ca.max.x&&(e=h)):(h0)&&_b()>1?(g=k,l>0&&kf.currItem.fitRatio&&(oa[a]+=b[a]*c)},Nb=function(a){if(!("mousedown"===a.type&&a.button>0)){if(Zb)return void a.preventDefault();if(!T||"mousedown"!==a.type){if(Db(a,!0)&&a.preventDefault(),Ca("pointerDown"),F){var b=e.arraySearch(lb,a.pointerId,"id");b<0&&(b=lb.length),lb[b]={x:a.pageX,y:a.pageY,id:a.pointerId}}var c=Lb(a),d=c.length;$=null,bb(),U&&1!==d||(U=ga=!0,e.bind(window,p,f),R=ja=ha=S=Z=X=V=W=!1,fa=null,Ca("firstTouchStart",c),La(na,oa),ma.x=ma.y=0,La(jb,c[0]),La(kb,jb),mb.x=sa.x*qa,nb=[{x:jb.x,y:jb.y}],P=O=Da(),Ra(s,!0),yb(),zb()),!_&&d>1&&!ea&&!Z&&(t=s,W=!1,_=V=!0,ma.y=ma.x=0,La(na,oa),La(gb,c[0]),La(hb,c[1]),Fb(gb,hb,ub),tb.x=Math.abs(ub.x)-oa.x,tb.y=Math.abs(ub.y)-oa.y,aa=ba=xb(gb,hb))}}},Ob=function(a){if(a.preventDefault(),F){var b=e.arraySearch(lb,a.pointerId,"id");if(b>-1){var c=lb[b];c.x=a.pageX,c.y=a.pageY}}if(U){var d=Lb(a);if(fa||X||_)$=d;else if(sb.x!==sa.x*qa)fa="h";else{var f=Math.abs(d[0].x-jb.x)-Math.abs(d[0].y-jb.y);Math.abs(f)>=fb&&(fa=f>0?"h":"v",$=d)}}},Pb=function(){if($){var a=$.length;if(0!==a)if(La(gb,$[0]),ib.x=gb.x-jb.x,ib.y=gb.y-jb.y,_&&a>1){if(jb.x=gb.x,jb.y=gb.y,!ib.x&&!ib.y&&vb($[1],hb))return;La(hb,$[1]),W||(W=!0,Ca("zoomGestureStarted"));var b=xb(gb,hb),c=Ub(b);c>f.currItem.initialZoomLevel+f.currItem.initialZoomLevel/15&&(ja=!0);var d=1,e=Sa(),g=Ta();if(c1&&(d=1),c=e-d*(e/3);else c>g&&(d=(c-g)/(6*e),d>1&&(d=1),c=g+d*e);d<0&&(d=0),aa=b,Fb(gb,hb,qb),ma.x+=qb.x-ub.x,ma.y+=qb.y-ub.y,La(ub,qb),oa.x=Ka("x",c),oa.y=Ka("y",c),R=c>s,s=c,Ga()}else{if(!fa)return;if(ga&&(ga=!1,Math.abs(ib.x)>=fb&&(ib.x-=$[0].x-kb.x),Math.abs(ib.y)>=fb&&(ib.y-=$[0].y-kb.y)),jb.x=gb.x,jb.y=gb.y,0===ib.x&&0===ib.y)return;if("v"===fa&&i.closeOnVerticalDrag&&!Ab()){ma.y+=ib.y,oa.y+=ib.y;var k=Hb();return S=!0,Ca("onVerticalDrag",k),Ea(k),void Ga()}Gb(Da(),gb.x,gb.y),X=!0,ca=f.currItem.bounds;var l=Mb("x",ib);l||(Mb("y",ib),Ma(oa),Ga())}}},Qb=function(a){if(N.isOldAndroid){if(T&&"mouseup"===a.type)return;a.type.indexOf("touch")>-1&&(clearTimeout(T),T=setTimeout(function(){T=0},600))}Ca("pointerUp"),Db(a,!1)&&a.preventDefault();var b;if(F){var c=e.arraySearch(lb,a.pointerId,"id");if(c>-1)if(b=lb.splice(c,1)[0],navigator.pointerEnabled)b.type=a.pointerType||"mouse";else{var d={4:"mouse",2:"touch",3:"pen"};b.type=d[a.pointerType],b.type||(b.type=a.pointerType||"mouse")}}var g,h=Lb(a),j=h.length;if("mouseup"===a.type&&(j=0),2===j)return $=null,!0;1===j&&La(kb,h[0]),0!==j||fa||ea||(b||("mouseup"===a.type?b={x:a.pageX,y:a.pageY,type:"mouse"}:a.changedTouches&&a.changedTouches[0]&&(b={x:a.changedTouches[0].pageX,y:a.changedTouches[0].pageY,type:"touch"})),Ca("touchRelease",a,b));var k=-1;if(0===j&&(U=!1,e.unbind(window,p,f),yb(),_?k=0:-1!==rb&&(k=Da()-rb)),rb=1===j?Da():-1,g=-1!==k&&k<150?"zoom":"swipe",_&&j<2&&(_=!1,1===j&&(g="zoomPointerUp"),Ca("zoomGestureEnded")),$=null,X||W||ea||S)if(bb(),Q||(Q=Rb()),Q.calculateSwipeSpeed("x"),S){var l=Hb();if(lf.currItem.fitRatio&&Sb(Q))}},Rb=function(){var a,b,c={lastFlickOffset:{},lastFlickDist:{},lastFlickSpeed:{},slowDownRatio:{},slowDownRatioReverse:{},speedDecelerationRatio:{},speedDecelerationRatioAbs:{},distanceOffset:{},backAnimDestination:{},backAnimStarted:{},calculateSwipeSpeed:function(d){nb.length>1?(a=Da()-P+50,b=nb[nb.length-2][d]):(a=Da()-O,b=kb[d]),c.lastFlickOffset[d]=jb[d]-b,c.lastFlickDist[d]=Math.abs(c.lastFlickOffset[d]),c.lastFlickDist[d]>20?c.lastFlickSpeed[d]=c.lastFlickOffset[d]/a:c.lastFlickSpeed[d]=0,Math.abs(c.lastFlickSpeed[d])<.1&&(c.lastFlickSpeed[d]=0),c.slowDownRatio[d]=.95,c.slowDownRatioReverse[d]=1-c.slowDownRatio[d],c.speedDecelerationRatio[d]=1},calculateOverBoundsAnimOffset:function(a,b){c.backAnimStarted[a]||(oa[a]>ca.min[a]?c.backAnimDestination[a]=ca.min[a]:oa[a]eb&&(h||b.lastFlickOffset.x>20)?d=-1:g<-eb&&(h||b.lastFlickOffset.x<-20)&&(d=1)}var j;d&&(m+=d,m<0?(m=i.loop?_b()-1:0,j=!0):m>=_b()&&(m=i.loop?0:_b()-1,j=!0),j&&!i.loop||(ta+=d,qa-=d,c=!0));var k,l=sa.x*qa,n=Math.abs(l-sb.x);return c||l>sb.x==b.lastFlickSpeed.x>0?(k=Math.abs(b.lastFlickSpeed.x)>0?n/Math.abs(b.lastFlickSpeed.x):333,k=Math.min(k,400),k=Math.max(k,250)):k=333,pb===m&&(c=!1),ea=!0,Ca("mainScrollAnimStart"),cb("mainScroll",sb.x,l,k,e.easing.cubic.out,Ja,function(){bb(),ea=!1,pb=-1,(c||pb!==m)&&f.updateCurrItem(),Ca("mainScrollAnimComplete")}),c&&f.updateCurrItem(!0),c},Ub=function(a){return 1/ba*a*t},Vb=function(){var a=s,b=Sa(),c=Ta();sc&&(a=c);var d,g=1,h=ia;return ha&&!R&&!ja&&s1||navigator.msMaxTouchPoints>1),f.likelyTouchDevice=G,r[A]=Nb,r[B]=Ob,r[C]=Qb,D&&(r[D]=r[C]),N.touch&&(q+=" mousedown",p+=" mousemove mouseup",r.mousedown=r[A],r.mousemove=r[B],r.mouseup=r[C]),G||(i.allowPanToNext=!1)}}});var Wb,Xb,Yb,Zb,$b,_b,ac,bc=function(b,c,d,g){Wb&&clearTimeout(Wb),Zb=!0,Yb=!0;var h;b.initialLayout?(h=b.initialLayout,b.initialLayout=null):h=i.getThumbBoundsFn&&i.getThumbBoundsFn(m);var j=d?i.hideAnimationDuration:i.showAnimationDuration,k=function(){_a("initialZoom"),d?(f.template.removeAttribute("style"),f.bg.removeAttribute("style")):(Ea(1),c&&(c.style.display="block"),e.addClass(a,"pswp--animated-in"),Ca("initialZoom"+(d?"OutEnd":"InEnd"))),g&&g(),Zb=!1};if(!j||!h||void 0===h.x)return Ca("initialZoom"+(d?"Out":"In")),s=b.initialZoomLevel,La(oa,b.initialPosition),Ga(),a.style.opacity=d?0:1,Ea(1),void(j?setTimeout(function(){k()},j):k());!function(){var c=l,g=!f.currItem.src||f.currItem.loadError||i.showHideOpacity;b.miniImg&&(b.miniImg.style.webkitBackfaceVisibility="hidden"),d||(s=h.w/b.w,oa.x=h.x,oa.y=h.y-K,f[g?"template":"bg"].style.opacity=.001,Ga()),ab("initialZoom"),d&&!c&&e.removeClass(a,"pswp--animated-in"),g&&(d?e[(c?"remove":"add")+"Class"](a,"pswp--animate_opacity"):setTimeout(function(){e.addClass(a,"pswp--animate_opacity")},30)),Wb=setTimeout(function(){if(Ca("initialZoom"+(d?"Out":"In")),d){var f=h.w/b.w,i={x:oa.x,y:oa.y},l=s,m=ia,n=function(b){1===b?(s=f,oa.x=h.x,oa.y=h.y-M):(s=(f-l)*b+l,oa.x=(h.x-i.x)*b+i.x,oa.y=(h.y-M-i.y)*b+i.y),Ga(),g?a.style.opacity=1-b:Ea(m-b*m)};c?cb("initialZoom",0,1,j,e.easing.cubic.out,n,k):(n(1),Wb=setTimeout(k,j+20))}else s=b.initialZoomLevel,La(oa,b.initialPosition),Ga(),Ea(1),g?a.style.opacity=1:Ea(1),Wb=setTimeout(k,j+20)},d?25:90)}()},cc={},dc=[],ec={index:0,errorMsg:'',forceProgressiveLoading:!1,preload:[1,1],getNumItemsFn:function(){return Xb.length}},fc=function(){return{center:{x:0,y:0},max:{x:0,y:0},min:{x:0,y:0}}},gc=function(a,b,c){var d=a.bounds;d.center.x=Math.round((cc.x-b)/2),d.center.y=Math.round((cc.y-c)/2)+a.vGap.top,d.max.x=b>cc.x?Math.round(cc.x-b):d.center.x,d.max.y=c>cc.y?Math.round(cc.y-c)+a.vGap.top:d.center.y,d.min.x=b>cc.x?0:d.center.x,d.min.y=c>cc.y?a.vGap.top:d.center.y},hc=function(a,b,c){if(a.src&&!a.loadError){var d=!c;if(d&&(a.vGap||(a.vGap={top:0,bottom:0}),Ca("parseVerticalMargin",a)),cc.x=b.x,cc.y=b.y-a.vGap.top-a.vGap.bottom,d){var e=cc.x/a.w,f=cc.y/a.h;a.fitRatio=e1&&(c=1),a.initialZoomLevel=c,a.bounds||(a.bounds=fc())}if(!c)return;return gc(a,a.w*c,a.h*c),d&&c===a.initialZoomLevel&&(a.initialPosition=a.bounds.center),a.bounds}return a.w=a.h=0,a.initialZoomLevel=a.fitRatio=1,a.bounds=fc(),a.initialPosition=a.bounds.center,a.bounds},ic=function(a,b,c,d,e,f){b.loadError||d&&(b.imageAppended=!0,lc(b,d),c.appendChild(d),f&&setTimeout(function(){b&&b.loaded&&b.placeholder&&(b.placeholder.style.display="none",b.placeholder=null)},500))},jc=function(a){a.loading=!0,a.loaded=!1;var b=a.img=e.createEl("pswp__img","img"),c=function(){a.loading=!1,a.loaded=!0,a.loadComplete?a.loadComplete(a):a.img=null,b.onload=b.onerror=null,b=null};return b.onload=c,b.onerror=function(){a.loadError=!0,c()},b.src=a.src,b},kc=function(a,b){if(a.src&&a.loadError&&a.container)return b&&(a.container.innerHTML=""),a.container.innerHTML=i.errorMsg.replace("%url%",a.src),!0},lc=function(a,b,c){if(a.src){b||(b=a.container.lastChild);var d=c?a.w:Math.round(a.w*a.fitRatio),e=c?a.h:Math.round(a.h*a.fitRatio);a.placeholder&&!a.loaded&&(a.placeholder.style.width=d+"px",a.placeholder.style.height=e+"px"),b.style.width=d+"px",b.style.height=e+"px"}},mc=function(){if(dc.length){for(var a,b=0;b=0,e=Math.min(c[0],_b()),g=Math.min(c[1],_b());for(b=1;b<=(d?g:e);b++)f.lazyLoadItem(m+b);for(b=1;b<=(d?e:g);b++)f.lazyLoadItem(m-b)}),Ba("initialLayout",function(){f.currItem.initialLayout=i.getThumbBoundsFn&&i.getThumbBoundsFn(m)}),Ba("mainScrollAnimComplete",mc),Ba("initialZoomInEnd",mc),Ba("destroy",function(){for(var a,b=0;b=0&&(void 0!==Xb[a]&&Xb[a])},allowProgressiveImg:function(){return i.forceProgressiveLoading||!G||i.mouseUsed||screen.width>1200},setContent:function(a,b){i.loop&&(b=za(b));var c=f.getItemAt(a.index);c&&(c.container=null);var d,g=f.getItemAt(b);if(!g)return void(a.el.innerHTML="");Ca("gettingData",b,g),a.index=b,a.item=g;var h=g.container=e.createEl("pswp__zoom-wrap");if(!g.src&&g.html&&(g.html.tagName?h.appendChild(g.html):h.innerHTML=g.html),kc(g),hc(g,pa),!g.src||g.loadError||g.loaded)g.src&&!g.loadError&&(d=e.createEl("pswp__img","img"),d.style.opacity=1,d.src=g.src,lc(g,d),ic(b,g,h,d,!0));else{if(g.loadComplete=function(c){if(j){if(a&&a.index===b){if(kc(c,!0))return c.loadComplete=c.img=null,hc(c,pa),Ha(c),void(a.index===m&&f.updateCurrZoomItem());c.imageAppended?!Zb&&c.placeholder&&(c.placeholder.style.display="none",c.placeholder=null):N.transform&&(ea||Zb)?dc.push({item:c,baseDiv:h,img:c.img,index:b,holder:a,clearPlaceholder:!0}):ic(b,c,h,c.img,ea||Zb,!0)}c.loadComplete=null,c.img=null,Ca("imageLoadComplete",b,c)}},e.features.transform){var k="pswp__img pswp__img--placeholder";k+=g.msrc?"":" pswp__img--placeholder--blank";var l=e.createEl(k,g.msrc?"img":"");g.msrc&&(l.src=g.msrc),lc(g,l),h.appendChild(l),g.placeholder=l}g.loading||jc(g),f.allowProgressiveImg()&&(!Yb&&N.transform?dc.push({item:g,baseDiv:h,img:g.img,index:b,holder:a}):ic(b,g,h,g.img,!0,!0))}Yb||b!==m?Ha(g):(da=h.style,bc(g,d||g.img)),a.el.innerHTML="",a.el.appendChild(h)},cleanSlide:function(a){a.img&&(a.img.onload=a.img.onerror=null),a.loaded=a.loading=a.img=a.imageAppended=!1}}});var nc,oc={},pc=function(a,b,c){var d=document.createEvent("CustomEvent"),e={origEvent:a,target:a.target,releasePoint:b,pointerType:c||"touch"};d.initCustomEvent("pswpTap",!0,!0,e),a.target.dispatchEvent(d)};ya("Tap",{publicMethods:{initTap:function(){Ba("firstTouchStart",f.onTapStart),Ba("touchRelease",f.onTapRelease),Ba("destroy",function(){oc={},nc=null})},onTapStart:function(a){a.length>1&&(clearTimeout(nc),nc=null)},onTapRelease:function(a,b){if(b&&!X&&!V&&!$a){var c=b;if(nc&&(clearTimeout(nc),nc=null,wb(c,oc)))return void Ca("doubleTap",c);if("mouse"===b.type)return void pc(a,b,"mouse");if("BUTTON"===a.target.tagName.toUpperCase()||e.hasClass(a.target,"pswp__single-tap"))return void pc(a,b);La(oc,c),nc=setTimeout(function(){pc(a,b),nc=null},300)}}}});var qc;ya("DesktopZoom",{publicMethods:{initDesktopZoom:function(){L||(G?Ba("mouseUsed",function(){f.setupDesktopZoom()}):f.setupDesktopZoom(!0))},setupDesktopZoom:function(b){qc={};var c="wheel mousewheel DOMMouseScroll";Ba("bindEvents",function(){e.bind(a,c,f.handleMouseWheel)}),Ba("unbindEvents",function(){qc&&e.unbind(a,c,f.handleMouseWheel)}),f.mouseZoomedIn=!1;var d,g=function(){f.mouseZoomedIn&&(e.removeClass(a,"pswp--zoomed-in"),f.mouseZoomedIn=!1),s<1?e.addClass(a,"pswp--zoom-allowed"):e.removeClass(a,"pswp--zoom-allowed"),h()},h=function(){d&&(e.removeClass(a,"pswp--dragging"),d=!1)};Ba("resize",g),Ba("afterChange",g),Ba("pointerDown",function(){f.mouseZoomedIn&&(d=!0,e.addClass(a,"pswp--dragging"))}),Ba("pointerUp",h),b||g()},handleMouseWheel:function(a){if(s<=f.currItem.fitRatio)return i.modal&&(!i.closeOnScroll||$a||U?a.preventDefault():E&&Math.abs(a.deltaY)>2&&(l=!0,f.close())),!0;if(a.stopPropagation(),qc.x=0,"deltaX"in a)1===a.deltaMode?(qc.x=18*a.deltaX,qc.y=18*a.deltaY):(qc.x=a.deltaX,qc.y=a.deltaY);else if("wheelDelta"in a)a.wheelDeltaX&&(qc.x=-.16*a.wheelDeltaX),a.wheelDeltaY?qc.y=-.16*a.wheelDeltaY:qc.y=-.16*a.wheelDelta;else{if(!("detail"in a))return;qc.y=a.detail}Ra(s,!0);var b=oa.x-qc.x,c=oa.y-qc.y;(i.modal||b<=ca.min.x&&b>=ca.max.x&&c<=ca.min.y&&c>=ca.max.y)&&a.preventDefault(),f.panTo(b,c)},toggleDesktopZoom:function(b){b=b||{x:pa.x/2+ra.x,y:pa.y/2+ra.y};var c=i.getDoubleTapZoom(!0,f.currItem),d=s===c;f.mouseZoomedIn=!d,f.zoomTo(d?f.currItem.initialZoomLevel:c,b,333),e[(d?"remove":"add")+"Class"](a,"pswp--zoomed-in")}}});var rc,sc,tc,uc,vc,wc,xc,yc,zc,Ac,Bc,Cc,Dc={history:!0,galleryUID:1},Ec=function(){return Bc.hash.substring(1)},Fc=function(){rc&&clearTimeout(rc),tc&&clearTimeout(tc)},Gc=function(){var a=Ec(),b={};if(a.length<5)return b;var c,d=a.split("&");for(c=0;c-1&&(xc=xc.split("&gid=")[0],xc=xc.split("?gid=")[0]),Ba("afterChange",f.updateURL),Ba("unbindEvents",function(){e.unbind(window,"hashchange",f.onHashChange)});var a=function(){wc=!0,zc||(Ac?history.back():xc?Bc.hash=xc:Cc?history.pushState("",document.title,Bc.pathname+Bc.search):Bc.hash=""),Fc()};Ba("unbindEvents",function(){l&&a()}),Ba("destroy",function(){wc||a()}),Ba("firstUpdate",function(){m=Gc().pid});var b=xc.indexOf("pid=");b>-1&&(xc=xc.substring(0,b),"&"===xc.slice(-1)&&(xc=xc.slice(0,-1))),setTimeout(function(){j&&e.bind(window,"hashchange",f.onHashChange)},40)}},onHashChange:function(){if(Ec()===xc)return zc=!0,void f.close();uc||(vc=!0,f.goTo(Gc().pid),vc=!1)},updateURL:function(){Fc(),vc||(yc?rc=setTimeout(Hc,800):Hc())}}}),e.extend(f,db)}}),function(a,b){"function"==typeof define&&define.amd?define(b):"object"==typeof exports?module.exports=b():a.PhotoSwipeUI_Default=b()}(this,function(){"use strict";return function(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v=this,w=!1,x=!0,y=!0,z={barsSize:{top:44,bottom:"auto"},closeElClasses:["item","caption","zoom-wrap","ui","top-bar"],timeToIdle:4e3,timeToIdleOutside:1e3,loadingIndicatorDelay:1e3,addCaptionHTMLFn:function(a,b){return a.title?(b.children[0].innerHTML=a.title,
!0):(b.children[0].innerHTML="",!1)},closeEl:!0,captionEl:!0,fullscreenEl:!0,zoomEl:!0,shareEl:!0,counterEl:!0,arrowEl:!0,preloaderEl:!0,tapToClose:!1,tapToToggleControls:!0,clickToCloseNonZoomable:!0,shareButtons:[{id:"facebook",label:"Share on Facebook",url:"https://www.facebook.com/sharer/sharer.php?u={{url}}"},{id:"twitter",label:"Tweet",url:"https://twitter.com/intent/tweet?text={{text}}&url={{url}}"},{id:"pinterest",label:"Pin it",url:"http://www.pinterest.com/pin/create/button/?url={{url}}&media={{image_url}}&description={{text}}"},{id:"download",label:"Download image",url:"{{raw_image_url}}",download:!0}],getImageURLForShare:function(){return a.currItem.src||""},getPageURLForShare:function(){return window.location.href},getTextForShare:function(){return a.currItem.title||""},indexIndicatorSep:" / "},A=function(a){if(r)return!0;a=a||window.event,q.timeToIdle&&q.mouseUsed&&!k&&K();for(var c,d,e=a.target||a.srcElement,f=e.className,g=0;g-1&&(c.onTap(),d=!0);if(d){a.stopPropagation&&a.stopPropagation(),r=!0;var h=b.features.isOldAndroid?600:30;s=setTimeout(function(){r=!1},h)}},B=function(){return!a.likelyTouchDevice||q.mouseUsed||screen.width>1200},C=function(a,c,d){b[(d?"add":"remove")+"Class"](a,"pswp__"+c)},D=function(){var a=1===q.getNumItemsFn();a!==p&&(C(d,"ui--one-slide",a),p=a)},E=function(){C(i,"share-modal--hidden",y)},F=function(){return y=!y,y?(b.removeClass(i,"pswp__share-modal--fade-in"),setTimeout(function(){y&&E()},300)):(E(),setTimeout(function(){y||b.addClass(i,"pswp__share-modal--fade-in")},30)),y||H(),!1},G=function(b){b=b||window.event;var c=b.target||b.srcElement;return a.shout("shareLinkClick",b,c),!!c.href&&(!!c.hasAttribute("download")||(window.open(c.href,"pswp_share","scrollbars=yes,resizable=yes,toolbar=no,location=yes,width=550,height=420,top=100,left="+(window.screen?Math.round(screen.width/2-275):100)),y||F(),!1))},H=function(){for(var a,b,c,d,e,f="",g=0;g"+a.label+"",q.parseShareButtonOut&&(f=q.parseShareButtonOut(a,f));i.children[0].innerHTML=f,i.children[0].onclick=G},I=function(a){for(var c=0;c=.95&&v.showControls()});var a;l("onPinchClose",function(b){x&&b<.9?(v.hideControls(),a=!0):a&&!x&&b>.9&&v.showControls()}),l("zoomGestureEnded",function(){(a=!1)&&!x&&v.showControls()})},S=[{name:"caption",option:"captionEl",onInit:function(a){e=a}},{name:"share-modal",option:"shareEl",onInit:function(a){i=a},onTap:function(){F()}},{name:"button--share",option:"shareEl",onInit:function(a){h=a},onTap:function(){F()}},{name:"button--zoom",option:"zoomEl",onTap:a.toggleDesktopZoom},{name:"counter",option:"counterEl",onInit:function(a){g=a}},{name:"button--close",option:"closeEl",onTap:a.close},{name:"button--arrow--left",option:"arrowEl",onTap:a.prev},{name:"button--arrow--right",option:"arrowEl",onTap:a.next},{name:"button--fs",option:"fullscreenEl",onTap:function(){c.isFullscreen()?c.exit():c.enter()}},{name:"preloader",option:"preloaderEl",onInit:function(a){m=a}}],T=function(){var a,c,e,f=function(d){if(d)for(var f=d.length,g=0;g-1&&(q[e.option]?(b.removeClass(a,"pswp__element--disabled"),e.onInit&&e.onInit(a)):b.addClass(a,"pswp__element--disabled"))}};f(d.children);var g=b.getChildByClass(d,"pswp__top-bar");g&&f(g.children)};v.init=function(){b.extend(a.options,z,!0),q=a.options,d=b.getChildByClass(a.scrollWrap,"pswp__ui"),l=a.listen,R(),l("beforeChange",v.update),l("doubleTap",function(b){var c=a.currItem.initialZoomLevel;a.getZoomLevel()!==c?a.zoomTo(c,b,333):a.zoomTo(q.getDoubleTapZoom(!1,a.currItem),b,333)}),l("preventDragEvent",function(a,b,c){var d=a.target||a.srcElement;d&&d.className&&a.type.indexOf("mouse")>-1&&(d.className.indexOf("__caption")>0||/(SMALL|STRONG|EM)/i.test(d.tagName))&&(c.prevent=!1)}),l("bindEvents",function(){b.bind(d,"pswpTap click",A),b.bind(a.scrollWrap,"pswpTap",v.onGlobalTap),a.likelyTouchDevice||b.bind(a.scrollWrap,"mouseover",v.onMouseOver)}),l("unbindEvents",function(){y||F(),t&&clearInterval(t),b.unbind(document,"mouseout",L),b.unbind(document,"mousemove",K),b.unbind(d,"pswpTap click",A),b.unbind(a.scrollWrap,"pswpTap",v.onGlobalTap),b.unbind(a.scrollWrap,"mouseover",v.onMouseOver),c&&(b.unbind(document,c.eventK,v.updateFullscreen),c.isFullscreen()&&(q.hideAnimationDuration=0,c.exit()),c=null)}),l("destroy",function(){q.captionEl&&(f&&d.removeChild(f),b.removeClass(e,"pswp__caption--empty")),i&&(i.children[0].onclick=null),b.removeClass(d,"pswp__ui--over-close"),b.addClass(d,"pswp__ui--hidden"),v.setIdle(!1)}),q.showAnimationDuration||b.removeClass(d,"pswp__ui--hidden"),l("initialZoomIn",function(){q.showAnimationDuration&&b.removeClass(d,"pswp__ui--hidden")}),l("initialZoomOut",function(){b.addClass(d,"pswp__ui--hidden")}),l("parseVerticalMargin",P),T(),q.shareEl&&h&&i&&(y=!0),D(),Q(),M(),N()},v.setIdle=function(a){k=a,C(d,"ui--idle",a)},v.update=function(){x&&a.currItem?(v.updateIndexIndicator(),q.captionEl&&(q.addCaptionHTMLFn(a.currItem,e),C(e,"caption--empty",!a.currItem.title)),w=!0):w=!1,y||F(),D()},v.updateFullscreen=function(d){d&&setTimeout(function(){a.setScrollOffset(0,b.getScrollY())},50),b[(c.isFullscreen()?"add":"remove")+"Class"](a.template,"pswp--fs")},v.updateIndexIndicator=function(){q.counterEl&&(g.innerHTML=a.getCurrentIndex()+1+q.indexIndicatorSep+q.getNumItemsFn())},v.onGlobalTap=function(c){c=c||window.event;var d=c.target||c.srcElement;if(!r)if(c.detail&&"mouse"===c.detail.pointerType){if(I(d))return void a.close();b.hasClass(d,"pswp__img")&&(1===a.getZoomLevel()&&a.getZoomLevel()<=a.currItem.fitRatio?q.clickToCloseNonZoomable&&a.close():a.toggleDesktopZoom(c.detail.releasePoint))}else if(q.tapToToggleControls&&(x?v.hideControls():v.showControls()),q.tapToClose&&(b.hasClass(d,"pswp__img")||I(d)))return void a.close()},v.onMouseOver=function(a){a=a||window.event;var b=a.target||a.srcElement;C(d,"ui--over-close",I(b))},v.hideControls=function(){b.addClass(d,"pswp__ui--hidden"),x=!1},v.showControls=function(){x=!0,w||v.update(),b.removeClass(d,"pswp__ui--hidden")},v.supportsFullscreen=function(){var a=document;return!!(a.exitFullscreen||a.mozCancelFullScreen||a.webkitExitFullscreen||a.msExitFullscreen)},v.getFullscreenAPI=function(){var b,c=document.documentElement,d="fullscreenchange";return c.requestFullscreen?b={enterK:"requestFullscreen",exitK:"exitFullscreen",elementK:"fullscreenElement",eventK:d}:c.mozRequestFullScreen?b={enterK:"mozRequestFullScreen",exitK:"mozCancelFullScreen",elementK:"mozFullScreenElement",eventK:"moz"+d}:c.webkitRequestFullscreen?b={enterK:"webkitRequestFullscreen",exitK:"webkitExitFullscreen",elementK:"webkitFullscreenElement",eventK:"webkit"+d}:c.msRequestFullscreen&&(b={enterK:"msRequestFullscreen",exitK:"msExitFullscreen",elementK:"msFullscreenElement",eventK:"MSFullscreenChange"}),b&&(b.enter=function(){if(j=q.closeOnScroll,q.closeOnScroll=!1,"webkitRequestFullscreen"!==this.enterK)return a.template[this.enterK]();a.template[this.enterK](Element.ALLOW_KEYBOARD_INPUT)},b.exit=function(){return q.closeOnScroll=j,document[this.exitK]()},b.isFullscreen=function(){return document[this.elementK]}),b}}});
var ak_js=document.getElementById("ak_js");
if(! ak_js){
ak_js=document.createElement('input');
ak_js.setAttribute('id', 'ak_js');
ak_js.setAttribute('name', 'ak_js');
ak_js.setAttribute('type', 'hidden');
}else{
ak_js.parentNode.removeChild(ak_js);
}
ak_js.setAttribute('value',(new Date()).getTime());
var commentForm=document.getElementById('commentform');
if(commentForm){
commentForm.appendChild(ak_js);
}else{
var replyRowContainer=document.getElementById('replyrow');
if(replyRowContainer){
var children=replyRowContainer.getElementsByTagName('td');
if(children.length > 0){
children[0].appendChild(ak_js);
}}
};